黑马程序员技术交流社区

标题: C语言中for、while和do while 的区别 [打印本页]

作者: 天下1083    时间: 2015-6-8 12:23
标题: C语言中for、while和do while 的区别
一、在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循环。

作者: aofex    时间: 2015-6-8 13:48
我想靠8月份的  大家水平都这么高了  完蛋了 唉

作者: 刘旭1    时间: 2015-6-8 21:55
和java一样啊
作者: zhanghao2744491    时间: 2015-6-8 23:16
楼主的水平已经达到这种水平了啊。我也是醉了。看来没希望了
作者: room_jay100    时间: 2015-6-8 23:19
for循环比较用得多,
作者: 天下1083    时间: 2015-6-9 10:57
晕,这都是视频上讲的啊,我总结一下而已

作者: 马贺飞    时间: 2015-6-12 09:38
围观学习
作者: sunqiwen2008    时间: 2015-6-12 09:57
围观学习
作者: evenzhu1989    时间: 2015-6-12 13:16

作者: 毓秀钟灵    时间: 2015-6-12 14:35
挺不错的,总结的很详细
作者: 王鹏    时间: 2015-6-12 21:44
楼主哪一期的?是北京iOS0612的吗?




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2