循环语法结构

“循环”这个词在我们日常生活中经常遇到,例如:循环播放某一首歌曲;就是一直在做某一件事情,重复地做某一件事情。那么,在C语言中,提供了“循环”控制语句,也是一样的道理,就是重复做某一件事情。

例如,当我们循环播放某一首歌曲,听腻了的时候,我们可以选择停止播放。所以,对于“循环”控制语句,也应该提供“停止循环”的机制。

计算机程序的优点,就是可以循环、不停地做某一件事情,所以,在程序设计中,循环控制是一种非常重要的控制语句。C语言提供了多种循环控制语句,下面我们一一来学习。

while语句

在C语言中,提供了while语句来进行循环控制。它的格式如下:

while(表达式) 循环语句;

该语句的执行流程是:

(1)步骤一:判断小括号中的表达式的值,如果表达式的值为,则执行while后面的循环语句;如果表达式的值为,则不执行循环语句,而且结束while语句的执行;

(2)步骤二:如果表达式的值为,执行完循环语句之后,回到步骤一继续循环判断执行;

while语句的执行流程可以如下图所示:

c语言用while避免死循环(C语言的while循环语法)(1)

所以,可以看到,如果表达式的值为真,那么,就一直执行循环语句。直到表达式的值为假的时候,才结束while()语句。如下是一个程序测试例子:

c语言用while避免死循环(C语言的while循环语法)(2)

程序运行的结果如下:

c语言用while避免死循环(C语言的while循环语法)(3)

我们来分析一下这个测试例子的执行过程:

(1) 定义 int 类型变量 i,它的值为3;

(2) 执行while(i--),那么,i--表达式的值是i变化之前的值,所以,i--表达式的值为3,此时,表达式的值为非0,所以,为,执行循环语句。所以,执行循环体的循环语句:

printf("i = %d\n", i); //循环体执行的语句

输出i的值;由于已经执行了i--,所以,i变量的值为2,所以,输出 i = 2;

(3) 继续执行while(i--),此时,i的值为2,那么,i--表达式的值为i变化之前的值,所以,i--表达式的值为2;是非0值,所以,为,继续执行循环语句,输出i变量的值;由于执行了i--,所以,i变量的值为1,所以,输出i = 1;

(4) 继续执行while(i--),此时,i的值为1,那么,i--表达式的值为i变化之前的值,所以,i--表达式的值为1;是非0值,所以,为,继续执行循环语句,输出i变量的值;由于执行了i--,所以,i变量的值为0,所以,输出i = 0;

(5) 继续执行while(i--),此时,i的值为0,那么,i--表达式的值为i变化之前的值,所以,i--表达式的值为0;是0值,所以,为“”;此时,while(表达式)中的表达式的值为“假”,那么,就结束while循环的执行。

所以,就不执行循环语句,而且结束while循环语句。

那么,我们可以总结,对于while循环语句,如果while(表达式)中的表达式值为,那么,就执行循环语句。如果表达式的值为假,就不执行循环语句,而且结束while语句的执行。

在上面的例子中,我们执行的循环语句只有一条,那么,如果想要循环执行多条语句,应该怎么样?

如果要想循环执行多条语句,可以使用大括号{}把多条语句包含起来,作为while循环的执行体,那么,就可以循环执行多条语句,定义的格式如下:

while(表达式)

{

循环语句1;

循环语句2;

循环语句N;

}

那么,就有:

(1) 如果表达式的值为真,就执行大括号{}定义的循环体,执行循环体中定义的循环语句;执行完循环体中的循环语句之后,继续判断表达式的值。

(2) 如果表达式的值为假,就不执行循环体中的循环语句,而且结束while语句的执行。

,