|
发表于 2013-2-1 07:54:00
|
显示全部楼层
- #include <stdio.h>
- void main()
- {
- int i =0, j = 0;
- printf("i j\n");
- for(i=0; i<2; i++)
- for(j=0; j<2; j++)
-
- printf("%d %d\n", i, j);
- }
复制代码 程序运行结果:
for语句执行步骤:
1.循环开始时 , 执行一次初始化语句
2.接着 , 对比循环条件。在这里 , i初始化为0 , 通过对比 i<2
3.如果循环条件为true 的话 , 执行循环体。在这里 ,开始执行 for(j =0 ; j<2 ;j++)
4.最后 , 求解表达式 i++啦
也就是说 当i = 0时 , 开始初始化 j = 0 , 然后再与 j<2 这个条件相比较 , 符合后执行循环体printf("%d %d\n", i, j);
r然后呢在执行 j++ , 现在j = 1 了 , 然后与 j <2 比较 , 符合 , 所以再执行printf("%d %d\n", i, j);
接着再执行j++ , 现在j = 2了 , 与j <2 这个条件比较 , 很显然 2<2 不成立嘛 , 所以这个循环结束了 ,当然这也意味着
for(i = 0 ; i <2 ; i++)的循环体结束啦 , 那么接下来就应该执行 i++ ,那么现在 i = 1 了, 然后与i<2 这个条件比较,符合就执行循环体 , 执行完后再i++ , 再与i<2 比较,现在i = 2 了 , 2< 2不成立 , 所以结束循环啦 , 本程序到此结束……
呼呼~~~
|
|