1.你的问题直接答案:先执行完所有内循环,再执行外循环,然后k=i;再进入内循环。内循环执行完成后再到外循环。
2.流程控制:顺序,选择,循环(流程控制都看不懂,学编程语言学不会的)。
简单解析你的问题:
先外循环for(i=0(只执行一次);i
k=i;
for(j=i+1;j
//语句;
}
3.不懂可以继续问,不帮你弄懂说明我的理解不深刻。
for循环的形式为:
for(initialization; test; increment)
{statements}
这些参数的意思是:
initialization:一个表达式。该表达式只在执行循环前被执行一次。
test:一个 Boolean表达式。如果 test 是 true,则 statement 被执行。如果 test 是 false,则循环结束。
increment:一个表达式。在每次经过循环的最后执行该递增表达式。
statements:test 是 true 时,要执行的一个或多个语句。可以是复合语句。
这些参数都可以省略,但是必须存在一个分号!
如for(i=0;;i++)
for(;i<10;i++)
for(;i<10;)
for(i=0;;)
都可以成立,但是如果少了initialization,则应在for循环之前,将循环条件用到的值初始化,
如果省略test,则应在循环体内设置判断语句进行break跳出循环;如果省略increment
则应在循环体内改变循环条件用到的值(这里是i)!
不管如何,for(;;)里面始终有两个";"
另外for循环用到的花括号{已经起到了分号;的作用;故for循环后不需要加分号;
如果加了分号,等于加了一句空语句!
希望能帮到你,亲!
外层循环执行一次,内循环执行所有符合条件的次数。
例:
for(i=1;i<=5;i++)
{
for(j=1;j<=5;j++)
{
.........;
}
}
i=1时j=1,j=2,j=3,j=4,j=5;即外层循环循环了一次,内层循环了5次。
所以外循环共循环了5次,内循环共循环了25次
在每一闪外循环执行时,内循环作为外循环的循环体都需要执行一圈,用你的话说是执行完所有的内循环后再到下一次的外循环,然后k=i再执行内循环一周
执行完是所有的内循环然后继续执行外循环,希望能帮到你