C语言中while循环和do...while循环
在实际生活中经常会将同一件事情重复做很多次,比如在走路时,会重复使用左右脚,打乒乓球时,会重复挥拍的动作等。同样在C语言中,也经常需要重复执行同一代码块,这时就需要使用循环语句。循环语句分为while循环语句、do…while循环语句和for循环语句三种。今天,我们将重点讲讲while循环和do...while循环语句。
C语言中while循环和do...while循环
while循环语句
while循环语句和条件判断语句有些相似,都是根据条件判断来决定是否执行大括号内的执行语句。区别在于,while语句会反复地进行条件判断,只要条件成立, { } 内的执行语句就会一直执行,直到条件不成立,while循环结束。while循环语句的具体语法格式如下:
while (循环条件)
{
执行语句
………
}
在上面的语法格式中, { } 中的执行语句被称作循环体,循环体是否执行取决于循环条件。当循环条件为true时,循环体就会被执行。循环体执行完毕时会继续判断循环条件,如条件仍为true则会继续执行,直到循环条件为false时,整个循环过程才会结束。
while循环的执行流程如下图所示:
接下来通过while语句来实现1~4之间自然数的打印,如下例所示:
#include
int main()
{
int x = 1; //定义变量x,初始值为1
while (x <= 4) // 循环条件
{
printf("x = %d
", x);// 条件成立,打印x的值
x++; // x进行自增
}
return 0;
}
运行结果如图3-14所示:
例中,x的初始值为1,在满足循环条件x <= 4的情况下,循环体会重复执行,打印x的值并让x进行自增。因此打印结果中x的值分别为1、2、3、4。值得注意的是,例3-7中的第8行代码用于在每次循环时改变变量x的值,直到循环条件不成立,如果没有这行代码,整个循环会进入无限循环的'状态,永远不会结束。
do-while循环语句
do…while循环语句和while循环语句功能类似,二者的不同之处在于,while语句需要先判断循环条件,然后根据判断结果来决定是否执行大括号中的代码,而do…while循环语句先要执行一次大括号内的代码再判断循环条件,其具体语法格式如下:
do
{
执行语句
………
} while(循环条件);
在上面的语法格式中,关键字do后面 { } 中的执行语句是循环体。do…while循环语句将循环条件放在了循环体的后面。这也就意味着,循环体会无条件执行一次,然后再根据循环条件来决定是否继续执行。
do…while循环的执行流程如图所示:
接下来使用do…while循环语句将例3-7进行改写,如例所示。
#include
int main()
{
int x = 1; //定义变量x,初始值为1
do
{
printf("x = %d
", x);// 条件成立,打印x的值
x++; // x进行自增
} while (x <= 4); // 循环条件
return 0;
}
运行结果如图所示:
两个例题的运行结果一致,这说明do …while循环和while循环能实现同样的功能。然而在程序运行过程中,这两种语句还是有差别的。如果循环条件在循环语句开始时就不成立,那么while循环的循环体一次都不会执行,而do…while循环的循环体还是会执行一次。若将例中的循环条件x<=4改为x < 1,后一个例子会打印x=1,而前一个例子则什么也不会打印。
【C语言中while循环和do...while循环】相关文章: