C语言提供了多种循环语句,可以组成各种不同形式的循环结构
C语言的循环语句共有三种:
- while 循环
- do … while 循环
- for 循环
一、while 语句
while语句的一般形式为:
while(表达式)
{
循环语句;
}
表达式含义为:计算表达式的值,若为真,则执行循环语句。
例如:(前100个数的累加)
int i=1,sum=0;
while(i<=100)
{
sum+=i;
i++;
}
printf("%d\n",sum);
do…while 语句**
do…while语句一般一般形式为:
do
{
循环语句;
}while(表达式);
注意:do...while语句与while语句很相似。while语句是先判断表达式的真假,
再进入循。do...while是先进入循环再判断表达式的真假, 无论表达式是否为真,
都会进行一次循环。
三、for 语句
for语句的一般形式为:
for(表达式1;表达式2;表达式3)
{
表达式4;
}
注意:for循环的执行顺序为:
表达式1--------表达式2---------表达式4----------表达式3
表达式 1:只运行一次,一般为赋值语句;
表达式 2:条件表达式,为进入for循环的表达式(控制循环次数)
表达式4 :循环体,可根据条件执行多次
表达式3 :单次循环的最后一个执行部分(i++)
四、循环的嵌套使用
循环中还有循环,三种循环语句都可以嵌套。以for循环嵌套较多
嵌套循环的执行流程涉及行列思想
①while循环的嵌套
一般形式为:
while(表达式1)
{
while(表达式2)
{
循环语句;
自增语句2;
}
自增语句1;
}
分析:程序先进入第一个while循环,紧接着进入第二个while循环。当不满足表达式2时,
跳出第二个while循环然后继续进入第二个while循环。值到不满足表达式1时跳出整个循环。
②do…while循环的嵌套
一般形式为:
do
{
do
{
语句;
自增语句;
}
自增语句;
}while(表达式)
分析:do...while语句与while语句相似,嵌套也与while语句差不多。区别在于do...while
会先执行一次内部的循环,再判断表达式的真假。
③for循环的嵌套
一般形式为:
for(表达式1;表达式2;表达式3)
{
for(表达式1;表达式2;表达式3)
{
语句;
}
}
for循环嵌套的执行过程与单个for循环的执行过程相同,相当于将单个for循环
语句中的循环语句换成一个for循环(与while循环嵌套理解相同)
五、break与continue
break只能用于循环语句和switch语句;
continue只能用于循环语句;
continue;(跳出当前循环,而不结束整个循环的进行,进行下一次循环)
break; (跳出整个循环,遵从就近原则)