| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 463 人关注过本帖, 1 人收藏
标题:指教啊!!!是用循环做吗?
只看楼主 加入收藏
lrt201136019
Rank: 1
等 级:新手上路
帖 子:54
专家分:2
注 册:2012-3-18
结帖率:50%
收藏(1)
已结贴  问题点数:20 回复次数:9 
指教啊!!!是用循环做吗?
编程输出这个:
             *
            ***
           *****
          *******
           *****
            ***
             *
搜索更多相关主题的帖子: 编程 
2012-03-25 22:56
迷上编程
Rank: 2
等 级:论坛游民
帖 子:140
专家分:86
注 册:2012-3-11
收藏
得分:3 
直接用输出语句的调用更简单!先定义四个输出语句,分别输出前四行,下面的重复前三个输出语句即可!
2012-03-25 23:35
爱闹的娃
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:3
帖 子:265
专家分:975
注 册:2011-10-23
收藏
得分:3 
这个可以做啊!!!只要你认真的去想,就可以输出来!!!
程序代码:
#include<stdio.h>
void main()
{
    int i,j,k;
    for(i=0;i<4;i++)//这里的循环是首先输出前面的4行
    {
        for(k=0;k<3-i;k++)//每一行输出空格的个数
        {
           printf(" ");
        }
        for(j=0;j<2*i+1;j++)//每一行输出星号的个数
        {
           printf("*");
        }
    printf("\n");
    }
  for(i=0;i<3;i++)//后三行输出情况
  {
       for(k=0;k<i+1;k++)
       {
         printf(" ");
       }
       for(j=0;j<=4-2*i;j++)
       {
          printf("*");
       }
  printf("\n");
  }

}
2012-03-25 23:36
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:3 
最烦直接给代码的

总有那身价贱的人给作业贴回复完整的代码
2012-03-26 07:20
清微御宇
Rank: 6Rank: 6
来 自:开封
等 级:侠之大者
威 望:2
帖 子:318
专家分:497
注 册:2012-1-15
收藏
得分:3 
回复 楼主 lrt201136019
谭老师书上的原题好像是上下左右都对称的,找空格和行的关系以及*和行的关系试试!

Stay hungry , Stay foolish!
2012-03-26 07:41
C_戴忠意
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:2
帖 子:575
专家分:1349
注 册:2011-10-21
收藏
得分:3 
先输出       *     
            ***
           *****
          *******
 在输出    *****
            ***
             *


 就是for的嵌套

编程之路定要走完……
2012-03-26 10:32
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:3 
呵呵 这个问题真的很经典啊

                                         
===========深入<----------------->浅出============
2012-03-26 10:33
huzhiliang
Rank: 1
等 级:新手上路
帖 子:9
专家分:2
注 册:2012-3-14
收藏
得分:3 
程序代码:
#include <stdio.h>
void main()
{
   //1.定义变量
   int nH = 7; // 行高
   int nA = 0; // 前导空格数
   int nB = 0; // 每行的星号数
   int nC = 0; // 行数
   int nL = 40;// 图形中心位置

  
   //2.设置初始值
   nA = nL;
   nB = -1;
  
   //3.打印图形
   for(nC = 0; nC <= nH; nC = nC + 1)
   {
       //3.1.计算每行的前导空格数和星号数
       if(nC <= nH / 2)
       {
            nA = nA -1;
            nB = nB + 2;
       }else
       {
            nA = nA + 1;
            nB = nB - 2;
       }

       // 3.2.打印前导空格
       for(int nI =1; nI <= nA; nI = nI + 1)
       {
          printf(" ");
       }

       // 3.3.打印本行星号

       for( nI =1; nI <= nB; nI = nI + 1)
       {
          printf("*");
       }

       //3.4. 换行
       printf("\n");

   }

}
2012-03-26 11:36
huzhiliang
Rank: 1
等 级:新手上路
帖 子:9
专家分:2
注 册:2012-3-14
收藏
得分:0 
程序代码:
#include <stdio.h>
void main()
{
   //1.定义变量
   int nH = 7; // 行高
   int nA = 0; // 前导空格数
   int nB = 0; // 每行的星号数
   int nC = 0; // 行数
   int nL = 40;// 图形中心位置

  
   //2.设置初始值
   nA = nL;
   nB = -1;
  
   //3.打印图形
   for(nC = 0; nC <= nH; nC = nC + 1)
   {
       //3.1.计算每行的前导空格数和星号数
       if(nC <= nH / 2)
       {
            nA = nA -1;
            nB = nB + 2;
       }else
       {
            nA = nA + 1;
            nB = nB - 2;
       }

       // 3.2.打印前导空格
       for(int nI =1; nI <= nA; nI = nI + 1)
       {
          printf(" ");
       }

       // 3.3.打印本行星号

       for( nI =1; nI <= nB; nI = nI + 1)
       {
          printf("*");
       }

       //3.4. 换行
       printf("\n");

   }

}
2012-03-26 11:36
w339735126
Rank: 2
等 级:论坛游民
帖 子:18
专家分:24
注 册:2012-3-15
收藏
得分:3 
回复 7楼 laoyang103
版主。请问用宏定义能不能简单点啊?
2012-03-26 11:51
快速回复:指教啊!!!是用循环做吗?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026214 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved