| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 550 人关注过本帖
标题:求解释
只看楼主 加入收藏
楚扬
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2007-7-15
收藏
 问题点数:0 回复次数:8 
求解释
void main(){
int i,j,k;
for(i=1;i<=3;i++)
{ for(j=1;j<=3-i+5;j++)
printf(" ");
for(k=1;k<=2*i-1+5;k++)
{
if(k<=5) printf(" ");
else printf("*");
}
printf("\n");
}
}
解释一下要全面哦
搜索更多相关主题的帖子: 解释 
2007-07-17 10:35
C的灿烂
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2007-7-16
收藏
得分:0 
这是一个金字塔循环,是C语言中一个经典的编程。
这个程序用三个循环控制了三个变量,
首先是个大循环,for(i=1;i<=3;i++) 这个循环控制的是行数,一共有3行。
再是加两个循环,for(j=1;j<=3-i+5;j++) 这个循环控制的是每一行前的空格数,
当i=1时,前面的空格是3-1+5=7个,加上它是使个循环,从1它自加到7,所以第一行有7个空格。
当i=2时,前面的空格是3-2+5=6个,~~~~~~~~~~~~~~~~~~从1自加到到6,所以第二行有6个空格。
后面是一个道理。
for(k=1;k<=2*i-1+5;k++) 这个是控制每一行有多少个“*”,但在里面还有个条件语句进行控制。
当i=1时,“*”有2*1-1+5-=6个,但后面还有个条件语句,if(k<=5) printf(" "); else printf("*")
说明的是当k小于或等于5时前面都是空格, 所以第一行只有一个“*”。
当i=2时,同理,第二行就有两个“*”了。
其实后面的那个条件语句可以改改不需要,直接用三个循环还方便些,你可以自己试试。
2007-07-17 11:16
楚扬
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2007-7-15
收藏
得分:0 

太深奥


2007-07-17 15:07
龙飞雪影
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2007-7-17
收藏
得分:0 
自己画星星试试,原来这种题目我都是这样理解的~

2007-07-17 16:29
yangzhifu
Rank: 1
等 级:新手上路
威 望:2
帖 子:433
专家分:0
注 册:2007-4-11
收藏
得分:0 

请不要看到字多就不看了,其实他解释的不错了,我们都是自己慢慢消化的


方寸之内,剖天下; 方坛之内,析自我;
2007-07-17 16:56
C的灿烂
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2007-7-16
收藏
得分:0 

多体会体会就理解了
其实没什么深奥的,要是不懂可以背下来到了一定的阶段在看这个就些就很简单了

2007-07-17 19:35
鬼魂
Rank: 1
等 级:新手上路
帖 子:98
专家分:0
注 册:2007-7-12
收藏
得分:0 
2楼的解释不错啦
void main(){
int i,j,k;
for(i=1;i<=3;i++)//最外层循环3次,每循环一次换行
{ for(j=1;j<=3-i+5;j++)//循环j直到j小于8-i;三次循环得每行开始的空格数为 7 6 5
printf(" ");
for(k=1;k<=2*i-1+5;k++)//循环K 其中2*i-1+5和后面的if else表名2*i-1是输出的*的个数 前面还有5个空格
=5) printf(" ");
else printf("*");
}
printf("\n");//换行
}
}
i=1,
*( i=1 3-i+5=7 再加5=12个空格 2*i-1=1个*)
***(i=2 3-i+5=6 再加5=11个空格 2*i-1=2个*)
*****(i=3 3-i+5=5 再加5=10个空格 2*i-1=3个*)

2007-07-17 20:05
totohack
Rank: 1
等 级:新手上路
帖 子:133
专家分:0
注 册:2007-7-15
收藏
得分:0 
太深奥

2007-07-17 20:09
鬼魂
Rank: 1
等 级:新手上路
帖 子:98
专家分:0
注 册:2007-7-12
收藏
得分:0 
  那自己用笔划  不要说不知道for是怎么循环的 就基本上会画了  

2007-07-17 20:10
快速回复:求解释
数据加载中...
 
   



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

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