| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1730 人关注过本帖
标题:请教for和while的区别
只看楼主 加入收藏
ws112233ws
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2015-7-16
结帖率:75%
收藏
已结贴  问题点数:20 回复次数:8 
请教for和while的区别
看郝斌老师的视频当他讲到for和while的区别时是这么说的:什么时候用for,什么时候用while没法说,用多了自然而然就知道了。
我就晕了,我还是不知道什么时候用for好,什么时候用while好,如果真的没区别,我认为只记住一个for不就行了么?可为什么还会出while?
上网查找for和while的区别是这样写的:for一般用于知道循环次数的结构,while一般用于无限次循环。真的就只是这样么?
2015-07-17 19:40
hjx1120
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:李掌柜
等 级:贵宾
威 望:41
帖 子:1314
专家分:6927
注 册:2008-1-3
收藏
得分:6 

如果你没有区分什么时候用for什么时候用while
那是因为for能做的事,while也能做到,
while要做的事,for也能做到
2015-07-17 20:15
o547336583
Rank: 2
等 级:论坛游民
帖 子:14
专家分:17
注 册:2014-12-21
收藏
得分:6 
for循环语句按用户规定的次数来重复执行一条或多条语句,适用于递增或递减操作。while循环适用的范围更大一些,对于未知次数的循环用while循环更加合适。
简单地说,就是:循环次数明确,条件递增有规律是用for,条件判断时用while
2015-07-17 22:12
rolimi
Rank: 4
等 级:业余侠客
威 望:1
帖 子:43
专家分:232
注 册:2015-6-10
收藏
得分:8 
当然不是那样,说while一般用于无限循环的,那老师真是误导。while和for功能上是重复的,如2楼所说。for把一个循环提炼后,划分出三个阶段,让你按着这三个步骤写,方便阅读和维护。然后并不是所有循环的这三步骤都很明显和必要。随便自己爱好用吧。比如
//获取一个不是换行符的字符
char c;
while ((c = getchar()) == '\n');
for (;(c = getchar()) == '\n';);
for(c=getchar(); c == '\n'; c = getchar());
for有三个逻辑,while一个逻辑,这时while读起来更简单

[ 本帖最后由 rolimi 于 2015-7-17 22:31 编辑 ]

呆呆的逗比程序猿
2015-07-17 22:26
刘蕊楹
Rank: 2
等 级:论坛游民
帖 子:41
专家分:44
注 册:2015-2-2
收藏
得分:0 
知道循环次数的时候for和while都可以用,比如
for(int i=0;i<100;i++)
{......}
就可以写成int i=0;
while(i<100){i++;},
不知道循环次数只能用while,如while(x>0)
{......}
2015-07-19 20:29
诸葛欧阳
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:流年
等 级:贵宾
威 望:82
帖 子:2790
专家分:14619
注 册:2014-10-16
收藏
得分:0 
很多时候可以相互转换

一片落叶掉进了回忆的流年。
2015-07-19 23:06
autumnyellow
Rank: 2
等 级:论坛游民
帖 子:72
专家分:75
注 册:2015-4-14
收藏
得分:0 
人多就是好,郝斌没讲清的终于弄懂了
2015-07-19 23:59
自傲
Rank: 2
等 级:论坛游民
帖 子:53
专家分:95
注 册:2015-5-16
收藏
得分:0 
我是旁听的,也受益匪浅
2015-07-20 09:27
ditg
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:16
帖 子:852
专家分:1937
注 册:2014-4-10
收藏
得分:0 
美观问题,嘿嘿

梦想拥有一台龙芯3A-4000
2015-07-20 12:36
快速回复:请教for和while的区别
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.033390 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved