mastertravels77 发表于 2022-5-11 14:02

c语言的三个循环语句该怎么区别呢

C语言循环控制语句是一个基于C语言的编程语句,该语句主要有while循环语句、do-while循环语句和for循环语句来实现循环结构。
一、for循环
for循环语句的基本语法
for(表达式1;表达式2;表达式3){
循环体;

语义:
1.选执行表达式1,跳转到2;
2.判断表达式2是否成立,如果成立,则跳转到3,否则跳转到5;
3.执行循环体,执行完毕,跳转到4;
4.执行表达式3,执行完毕,跳转到2;
5.跳出循环,循环结束。
例如:
打印1-100的值
#include
intmain(){
for(inti=1;i<=100;i++){
printf("%d",i);
};
return0;
}
for循环的其他格式:
表达式1、表达式2、表达式3都可以省略。
注意:表达式2没写的话会进入死循环。
就算表达式1、表达式3不写,也要记得写分号。
表达式1、表达式3可以写任意语句,要用逗号隔开。
二、while循环
while循环语句的基本语法
while(表达式){
循环体;//或者称为语句块

语义:
1.选判断表达式是否成立,如果成立,则跳转到2,否则跳转到3;
2.执行循环体,执行完毕跳转到1;
3.跳出循环,循环结束。
例如:
打印1-100的值
#include
intmain(){
inti=1;
while(i<=100){
printf("%d",i);
i++;
}
return0;
}
运行结果是:2
程序运行:
i=1,满足i<=100条件,进入循环,打印i的值,然后执行i++,再返回i<=100,进行判断是否成立,以此循环进行。
当i=100,依然满足i<=100,进入循环,打印i的值100,执行i++,i=101,跳转到表达式i<=100进行判断,此时即为101<=100,不成立,则不执行循环体,执行起后的语句return0。
while循环需要注意的地方:
1.防止死循环。
避免条件永真或者永假。
如果永真则死循环;如果永假则不循环,写起来毫无意义;
2.while循环后,不要加分号,即在while后面不要加分号(;)。
如果想加分号,可以在大括号后面加,(即};);
3.不要忘记写结束循环的语句;
4.循环和if语句一样的地方是:大括号可以省略。
但只能控制离它最近的一条语句。
也就是说当循环体只有一条语句的的时候,可以省略大括号。
但这条语句不能是声明语句(如:intnum=10;这样则不行。
)
三、do…while循环
do…while循环语句的基本语法
do{
循环体;//或者称为语句块
}while(表达式);
语义:
1.选执行循环体,跳转到2;
2.选判断表达式是否成立,如果成立,则跳转到1,否则跳转到3;
3.跳出循环,循环结束。
例如:
#include
intmain(){
inti=1;
do{
i++;
printf("%d",i);
}while(i>10);
return0;
}
程序运行:先执行循环体,执行i++,再打印出i的值2,然后进行判断i>10是否成立,2>10不成立,则不执行循环体,执行起后的语句return0。
特别注意:
do…while循环语句中,在while括号后,要加分号(;),否则会出现报错。
do…while循环和while循环最大的区别是:
do…while循环先执行循环体,再判断表达式;while循环是先判断循环体,再执行。
即:while里的循环体可能1次都不会被执行;do…while循环里面的循环体至少会被执行1次。
扩展资料:
三种循环语句的比较
同一个问题,往往既可以用while语句解决,也可以用do-while或者for语句来解决,但在实际应用中,应根据具体情况来选用不同的循环语句。
选用的一般原则是:
(1)如果循环次数在执行循环体之前就已确定,一般用for语句。
如果循环次数是由循环体的执行情况确定的,一般用while语句或者do-while语句。
(2)当循环体至少执行一次时,用do-while语句,反之,如果循环体可能一次也不执行,则选用while语句。
C++/C循环语句中,for语句使用频率最高,while语句其次,do语句很少用。
三种循环语句for、while、do-while可以互相嵌套自由组合。
但要注意的是,各循环必须完整,相互之间绝不允许交叉。
参考资料:
百度百科-C语言循环控制语句
页: [1]
查看完整版本: c语言的三个循环语句该怎么区别呢