1.while循环
}
语义:
1.选判断表达式是否成立,如果成立,则跳转到2,否则跳转到3;
2.执行循环体,执行完毕跳转到1;
3.跳出循环,循环结束。
#include<stdio.h>
int main() {
int i = 1;
while( i<=100 ) {
printf("%d ",i);
i++;
}
return 0;
}
运行结果是: 2
程序运行:i=1,满足i<=100条件,进入循环,打印i的值,然后执行i++,再返回i<=100,进行判断是否成立,以此循环进行。当i=100,依然满足i<=100,进入循环,打印i的值100,,执行i++,i=101,跳转到表达式i<=100进行判断,此时即为101<=100,不成立,则不执行循环体,执行起后的语句return 0。
while循环需要注意的地方:
1.防止死循环。避免条件永真或者永假。如果永真则死循环;如果永假则不循环,写起来毫无意义;
2.while循环后,不要加分号,即在while后面不要加分号(;)。如果想加分号,可以在大括号后面加,(即};);
3.不要忘记写结束循环的语句;
4.循环和if语句一样的地方是:大括号可以省略。但只能控制离它最近的一条语句。也就是说当循环体只有一条语句的的时候,可以省略大括号。但这条语句不能是声明语句(如:int num = 10; 这样则不行。)
循环体;//或者称为语句块
}while(表达式);
语义:
1.选执行循环体,跳转到2;
2.选判断表达式是否成立,如果成立,则跳转到1,否则跳转到3;
3.跳出循环,循环结束。
例如:
#include<stdio.h>
int main() {
int i = 1;
do{
i++;
printf("%d ",i);
}while( i>10 );
return 0;
}
程序运行:先执行循环体,执行i++,再打印出i的值2,然后进行判断i>10是否成立,2>10不成立,则不执行循环体,执行起后的语句return 0。
while循环语句的基本语法、
while(表达式){
循环体;//或者称为语句块}
语义:
1.选判断表达式是否成立,如果成立,则跳转到2,否则跳转到3;
2.执行循环体,执行完毕跳转到1;
3.跳出循环,循环结束。
#include<stdio.h>
int main() {
int i = 1;
while( i<=100 ) {
printf("%d ",i);
i++;
}
return 0;
}
运行结果是: 2
程序运行:i=1,满足i<=100条件,进入循环,打印i的值,然后执行i++,再返回i<=100,进行判断是否成立,以此循环进行。当i=100,依然满足i<=100,进入循环,打印i的值100,,执行i++,i=101,跳转到表达式i<=100进行判断,此时即为101<=100,不成立,则不执行循环体,执行起后的语句return 0。
while循环需要注意的地方:
1.防止死循环。避免条件永真或者永假。如果永真则死循环;如果永假则不循环,写起来毫无意义;
2.while循环后,不要加分号,即在while后面不要加分号(;)。如果想加分号,可以在大括号后面加,(即};);
3.不要忘记写结束循环的语句;
4.循环和if语句一样的地方是:大括号可以省略。但只能控制离它最近的一条语句。也就是说当循环体只有一条语句的的时候,可以省略大括号。但这条语句不能是声明语句(如:int num = 10; 这样则不行。)
2.do…while循环
do…while循环语句的基本语法
do{循环体;//或者称为语句块
}while(表达式);
语义:
1.选执行循环体,跳转到2;
2.选判断表达式是否成立,如果成立,则跳转到1,否则跳转到3;
3.跳出循环,循环结束。
所以do…while循环中,循环体至少会被执行1次。
do…while循环和while循环最大的区别是:
do…while循环先执行循环体,再判断表达式;while循环是先判断循环体,再执行。
即:while里的循环体可能1次都不会被执行;
do…while循环里面的循环体至少会被执行1次。例如:
#include<stdio.h>
int main() {
int i = 1;
do{
i++;
printf("%d ",i);
}while( i>10 );
return 0;
}
程序运行:先执行循环体,执行i++,再打印出i的值2,然后进行判断i>10是否成立,2>10不成立,则不执行循环体,执行起后的语句return 0。