c语言中内嵌循环是怎样进行的,内循环和外循环一起到底什么时候执行内循环什么时候执行外循环。

表现的流程图是怎样的。谢谢帮我解答下。

break,continue,goto ,return等控制语句会改变循环的执行次数。
int i,j,k;
for (i=0;i<100;i++) //循环的控制代码

{
......//外循环的一部分代码
for (j=0;j<20;j++)//内循环1)外循环执行一次,内循环执行一遍循环, 内循环是外循环的一部分。
{
。。。。 //内循环的内部代码,
外循环执行一次
内部代码执行到循环结束,
// 外循环执行一次
,没有break,continue,goto ,return等控制语句的话执行20次
// 外循环执行
100次内循环执行100*20次
}
.....
//外循环的另一部分代码 for (k=0;k<20;j++) //内循环2)
外循环执行一次,内循环执行一遍循环

{
。。。。。
}
......
//外循环的
另一部分代码

}
for (e1;e2;e3){}
for 循环的初始化部分
e1
只执行一次
e2;每轮开始检测循环条件 e2; 比循环多执行一次
e3;和循环体执行同样次数,除非循环体内部有
break,continue,goto ,return等控制语句
或者exit 等特殊函数;
do {}
while(e);
循环体至少执行一次,循环体和条件表达式e执行的次数相同,除非有 break,continue,goto ,return等控制语句,或者其控制语句作用的函数。
while(e){} 条件表达式比循环体多执行一次,除非遇到 break,continue,goto ,return等控制语句 或者其同样作用的函数。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-04-25
设想一个军队方阵,给每一个士兵授勋,需要从第一行开始一直到最后一行,而每一行有需要从第一个士兵到行尾士兵。这里,行的更替就是外循环,每行的士兵更替就是内循环
第2个回答  2013-04-25
for(i = 0;i<3;i++)
for(j = 0;j<3;j++)
{
printf("%d,%d\n",i,j);
}从这段代码可以看出当外循环执行一次,内循环要一直运行到结束为止!
第3个回答  2013-04-25
#include<stdio.h>
void main()
{
char s[20];
printf("请输入字符串:\n");
scanf("%s",&s);
//循环队列
int head,end;
int i=0,j=0,max;
while(s[i]!='\0')
{
i++;
}
max=end=i;
head=0;
printf("输出如下:\n");
for(i=0;i<max;i++)
{
for(j=head;j<end;j++)
{
printf("%c",s[j%max]);
}
printf("\n");
head+=1;
end+=1;
}
}

自己分析一下这个程序,好好看看!

追问

看不懂,运行了一下,有一个错误,然后我把int head,end;int i=0,j=0,max;移到main函数的开头就可以运行了,为什么会这样,定义的变量不是在整个main函数都可以使用的吗?为什么没有移动的时候就会出现没有定义head、j的错误。循环嵌套看不懂,不知道先执行哪个循环然后什么时候才执行外循环。编程序的思路是什么。谢谢帮我解答下。

追答

我用的是vc6.0没有错误啊!》》》》定义变量在main()函数之外是全局变量,整个函数都可以使用。》》》循环嵌套,内循环最先执行完!外循环最先执行!  还有什么不理解的?

追问

我用的也是vc6.0啊,还是会出错。这里有一个while、两个for,怎么就能实现字符的循环左移呢。

相似回答