这里的双重循环for(i=1;i<=9;i++)是外循环,for(j=1;j<=9;j++)是内循环。先执行循环for(j=1;j<=9;j++),即在每一个i下,循环j的值。
具体的循环的访问次序是,首先取i=1,在此条件下,进行内循环for(j=1;j<=9;j++),依次访问(i=1,j=1),(i=1,j=2),(i=1,j=3)....执行完内循环后(j加到9的时候),执行一次外循环,i++。
此时i=2,在i=2的条件下,再一次进行内循环for(j=1;j<=9;j++),依次访问(i=2,j=1),(i=2,j=2),(i=2,j=3)....,其他的继续按照这个步骤操作下去。
扩展资料:
c语言三种循环do while、for、while的异同点:
用while和do…while循环时,循环变量的初始化的操作应在循环体之前,而for循环一般在语句1中进行的;while循环和for循环都是先判断表达式,后执行循环体,而do…while循环是先执行循环体后判断表达式。
也就是说do…while的循环体最少被执行一次,而while循环和for就可能一次都不执行。另外还要注意的是这三种循环都可以用break语句跳出循环,用continue语句结束本次循环,而goto语句与if构成的循环,是不能用break和 continue语句进行控制的。
参考资料:百度百科—c语言
你可以试着画一个程序执行的流程图,那样就会看得很明白了。
for(i=1;i<=9;i++){
for(j=1;j<=9;j++)
printf("%d*%d=%d\n",i,j,i*j);}
getch();}
两个for,外面的是外循环,里面的是内循环。你应该知道程序有3种基本控制结构吧:顺序,条件,循环。所以没有特殊情况的话程序当然是按照代码的顺序执行的,这样就知道先执行那个了,是代码在前面的那个循环,就是外循环了。然后进入循环控制结构。
从外循环进入内循环,然后判断j的值,看是否小于9,若是不小于,条件为真,则一直进行内循环,当j大于9的时候,跳出循环,接着判断i的值。看是否小于9,若是不小于,则进入外循环,接着进入内循环。如此反复。 这才是循环的特点。
for(i=1;i<=9;i++)外循环{
for(j=1;j<=9;j++) 内循环
printf("%d*%d=%d\n",i,j,i*j);}
getch();}
你都把I和J的值打出来了 ,应该知道是怎么循环的了 首先外循环I=1 满足条件,到FOR内循环 开始J=1 直到J=9 循环9次 J=10不满足条件跳出内循环,回到外循环 I=2 依次类推 就是这么执行的
for(i=1;i<=9;i++)//外循环
{
for(j=1;j<=9;j++) //内循环
printf("%d*%d=%d\n",i,j,i*j);
}
getch();
}
外循环每执行一步,内循环执行一圈。
外循环相当于时钟的分针,内循环相当于秒针。
先i=1,然后执行从j=1到9
然后i=2,然后执行从j=1到9
。。
一直到i=9,然后执行从j=1到9
i=10,跳出循环