一、在C语言中,for语句使用最为灵活,它完全可以取代 while 语句。它的一般形式为:
for(表达式1;表达式2;表达式3)
语句
它的执行过程如下:
先求解表达式1。
求解表达式2,若其值为真(非0),则执行for语句中指定的内嵌语句,然后执行下面第(3)步;若其值为假(0),则结束循环,转到第5)步。
求解表达式3。
转回上面第2)步继续执行。表达式1只执行一次。
循环结束,执行for语句下面的一个语句。
二、while语句的一般形式为:
while(表达式)语句
其中表达式是循环条件,语句为循环体。
while语句的语义是:计算表达式的值,当值为真(非0)时, 执行循环体语句。其执行过程可用下图表示。
使用while语句应注意以下几点:
1、while语句中的表达式一般是关系表达或逻辑表达式,只要表达式的值为真(非0)即可继续循环。
2、循环体如包括有一个以上的语句,则必须用{}括起来,组成复合语句。
三、do-while语句的一般形式为:
do
语句
while(表达式);
这个循环与while循环的不同在于:它先执行循环中的语句,然后再判断表达式是否为真, 如果为真则继续循环;如果为假, 则终止循环。因此, do-while循环至少要执行一次循环语句。
四、for和while的比较
其实这两个可以互相代替的,比如说
for (int i = 0; i<10; i++)
{...//插入语句 }
用while来写就是
int i = 0;
while (i<10)
{
...//插入语句
i++;
}
1、从上可以看出for循环比较简洁,会比while更常用些,循环次数已知的情况下,尤其是用使用指针的时候,很方便的。
2、但是如果想做无限循环,while更方便点,比如说
int i = 1;
while (i == 1){ ... }
五、while与do while比较
do..while,和while差不多,但是do...while在任何情况下都会先执行命令一次,即使i不符合设定条件,
do{
…
}
while (i<10);
没有特殊要求的时候二者选一即可,但是通常我们会选择while循环。
|
|