1楼:软件
嵌套就一层一层的执行,需要有必要的做些标记:例内如:
for(int i=0;i<4;i++)
for(int j=0;j<4;j++)
for(int k=0;k<4;k++)
printf(%d%d%d,i,j,k);
这个就是先 i=0——
容>j=0——>k=0 输出:0 0 0i=0——>j=0——>k=1 输出:0 0 1.......
*(当k的4次结束后,j就加1 k接着从0开始)i=0——>j=1——>k=0 输出:0 1 0i=0——>j=1——>k=1 输出:0 1 1...
(k的4次执行完后,j就再加1,成了2 )
.......*(当这样循环j的4次也结束后,i就加1,成了1,而j还是从0开始,k亦从0开始,知道最后i变成4)...输出:
4 4 4后结束,这样说我觉得可以了,要是还有问题的话,可以再问,你只要耐心一点一步一步走就懂了。
2楼:随风而逝_微尘
麻烦来完自整的排一bai下版,而
du且#include "stdafx.h" #includeint main(int argc, char* argv) printf("\n"); } for(i=1;i<=n-1;i++) { for(j=1;j<=i;j++) printf(" ");还少
zhi了东西dao
3楼:吴唯寒萱
for()
{for()
}这是嵌套,也就是说for作为循环体。
for(){}
for(){}这是并列。
4楼:匿名用户
最简单的 数大括号就是了
5楼:匿名用户
return o错了,是return 0啊,零啊
6楼:债务危机
你不分行写我也懒得看了。。。
7楼:非非冰弋
把格式调整好。。。 其实不难。静下心来对照着输出结果一句一句的分析就好
8楼:吴世雄天下
一层层的拆才开看就可以了。。
c语言中关于多个for循环的问题 5
9楼:匿名用户
#include
void main()
10楼:匿名用户
1、最开抄
始进入的是第一层for循环,袭在进入第二层for循环,一直bai到最后一层dufor循环执行完,再返回上一zhi层for循环一次,进入dao下一层循环,一直到所有循环结束。
2、例如:
for(inti=0;i<5;i++)
printf("\n");
}/*这里是3层循环,第一次是i=0,j=0,l=0,一直l=4;在返回j=1,l=0,一直到l=4;再返回上一层循环,直到j=4;再返回i=1,直到i=4结束整个循环,结果就是循环125次:
(最外层是是对应5组,第二层是对应25行,第三层是对应0—4)*/
11楼:听不清啊
图中二层循环都是循环3次,所以就输出9个aa
循环全部结束后输出bb一次。
12楼:
这个实际bai上不是 多个for循环的问du题,而是一个语zhi
句的作用范围dao的问题
当你需要循环的语回句只有一句的时答候,就可以写成这样
for(i=0,i<3;i++)
printf("aa\n");
如果有多个的话
就需要用大括号括起来
for(i=0,i<3;i++)
括起来的话,这三句都将循环三次。
而不论大括号里括了多少条语句,for循环本身也只算一个语句。
因此,可以分析你刚才那段**
for(i=0;i<3;i++)
for(j=2;j<5;j++)
printf("aa\n");
printf("bb\n");
先看外边的for ,它没有使用大括号{} ,因而只将离他最近得一条语句进行循环
而这条语句也是一个for循环。 第二个for 循环也没有大括号,因此也只将离他最近得语句进行循环。即将printf("aa\n");进行循环。
而最后的printf("bb\n");没有在任何循环里边,所以只执行一次。
for循环的嵌套,从外边进入里边,将里边的循环当做一个整体,几次循环执行完毕后,再回过头来进行外边循环。总的来说,将里边的循环看做整体,比较有利于理解。
13楼:刘鸿波
你的程序相对于bai下面这段代du码:
#include
void main()
}printf("bb\n");}执行
zhi顺序如下:
i=0:
j=2;printf("aa\n");j++;
j=3;printf("aa\n");j++;
j=4;printf("aa\n");j++;
i=1;
j=2;printf("aa\n");j++;
j=3;printf("aa\n");j++;
j=4;printf("aa\n");j++;
i=3;
j=2;printf("aa\n");j++;
j=3;printf("aa\n");j++;
j=4;printf("aa\n");j++;
跳出dao嵌套循环
执行printf("bb\n");
所以版最终的结果是9个
权aa,一个bb
14楼:
#include
void main()
15楼:匿名用户
执行的每一步 顺序 如下
i=0,i=2,printf("aa\n");
i=0,i=3,printf("aa\n");
i=0,i=4,printf("aa\n");
i=1,i=2,printf("aa\n");
i=1,i=3,printf("aa\n");
i=1,i=4,printf("aa\n");
i=2,i=2,printf("aa\n");
i=2,i=3,printf("aa\n");
i=2,i=4,printf("aa\n");
printf("bb\n");
**这么写让人 能好理解些。
#include
void main()
里的**
for(j=2;j<5;j++)
}printf("bb\n");//这个print 不属于任何循答环里 所以只执行了1次}
16楼:匿名用户
先是内层循环(即j),再循环i,因为没加{}所以循环体只有输出aa那个,最后退出两个循环时才输出一个bb,谢谢
17楼:匿名用户
先执行一
抄次最外层的for语句,然后执行第二层的for语句袭,直到第二层执行完毕bai
,又回到第du一层的for语句执行一次
zhi,再执行第二层,结果是外循环的for语句执行3次,第二层的for循环执行(5-2)*3=9次,第二层的循环每执行一次就输出一个aa,所以输出9个aa,printf("bb\n")是在for语句的外边,所以只在最后执行一次,for语句如果每次循环都要执行一条以上的语dao句就要在语句外边加花括号,即如果要执行printf("aa\n");printf("bb\n");两条语句的话就要写成
这种形式。
18楼:孤高天子龙
里面那个循环执行3乘3次,外面循环执行3次。
原理就是里面循环完了,外面循环一次。
19楼:匿名用户
for嵌套,由外到内。第一层for执行一次,就会到第二层for,直到第二层for循环结束,开始第一层for的第二次执行,然后就开始第二层的第二次。。。。直到结束
20楼:秒杀
你可以这样抄理袭解:
for(i=0;i<3;i++)
printf("bb\n"); //这里会输出1个“bb”
21楼:来厦门找我
0,1,2 2,3,4 3*3=9 所以是9个aa 最后循环后就是打印bb