找回密码
 注册
搜索
热搜: 回贴
  • 前程无忧官网首页 有什么好的平台可以
  • 最新的销售平台 互联网营销的平台有哪
  • 制作网页的基本流程 网页制作和网页设
  • 【帝国CMS】输出带序号的列表(数字排
  • 网站建设公司 三一,中联,极东泵车的
  • 织梦 建站 织梦网站模版后台怎么更改
  • 云服务官网 哪些网站有免费的简历模板
  • 如何建网站要什么条件 建网站要用什么
  • 吉林市移动公司电话 吉林省退休人员网
  • 设计类毕业论文 网站设计与实现毕业论
查看: 490|回复: 9

[讨论]循环语句 师兄姐师弟妹都来讨论下```

[复制链接]
发表于 2009-11-6 02:00:20 | 显示全部楼层 |阅读模式 IP:江苏扬州
今天上C++课,老师点人上去做题目 有个女生把题目是做出来了 而且是对 的 但是还是受到了老师的批评
你们肯定很疑惑```做对了还批评?
是这样的:
我们老师很反感别人循环语句用while循环 他非常喜欢for
他说for简洁易懂,语句清晰 他还严格要求我们"要有良好的编程风格,用循环时候必须用for不许我们用while"
卷子和作业必须得这样做 我不知道这种逼迫学生学习固定的语法,以后对自己有没有害处?
是不是while的功能for完全可以体现出来? 以后用循环是不是可以淘汰while???
那while和for究竟有什么各自的特点优点?什么场合下用就完全没有区分吗?
师兄师弟 都发表下意见吧``
``````
`````
我while循环 现在越来越陌生了 其实我也慢排斥它的 我循环基本上没有用过while
发表于 2009-11-6 02:00:22 | 显示全部楼层 IP:江苏扬州
多数程序员偏爱for,这是事实。
但是whlie也有它的好处啊,有些地方用起来可以使代码简洁些
比如你要以流的合法性作为条件循环,比如
while(cin >> ch)
这样好还是
for(;cin >> ch ;)这样好是显而易见的吧!

我的理解是,在循环中需要对一个索引值自增,自减,或者按序改变时用for.
回复

使用道具 举报

发表于 2009-11-6 02:00:23 | 显示全部楼层 IP:江苏扬州
for有时候感觉是要好用点 像嵌套 一般都是用for 不过while也挺好的 就像楼上说的 还有 就是有些用do while的结构会比用fo的更简洁 方便
回复

使用道具 举报

发表于 2009-11-6 02:00:24 | 显示全部楼层 IP:江苏扬州
我们老师也是这么说的,不过没你老师那么死板哎..
当循环次数未知时候用while语句更清晰明了.
这个看需求啦,反正我for循环想不出来的时候就会考虑while算法.
而且有些问题,用while比较好,例如
要求你在键盘上持续给一维数组送数,int a[100]
一般情况下肯定用不到100啦,这里100就是个上限,初级数据结构课经常有的.
int a[100],i,j=0;
cout<<"请输入数据,输入-1时结束"<<endl;
cin>>i;
while(i!=-1)
{
a[j]=i;
j++;
cin>>i;
}


用for循环是不是这样写?
int a[100],i,j;
cout<<"请输入数据,输入-1时结束"<<endl;
cin>>i;
for(j=0;i!=-1;j++)
{
a[j]=i;
cin>>i;
}

个人感觉初学的时候while比较好理解一些的说
回复

使用道具 举报

发表于 2009-11-6 02:00:25 | 显示全部楼层 IP:江苏扬州
其实我感觉有些时候用while是相当爽的,比如:
要让程序运行暂时停顿,直到用户按键为止.
用while(!_kbhit());
很方便完成任务,但用for似乎不是很爽.
不过在涉及循环控制变量改变的情况下好象for方便些,
如for(int i=0;i<n;i++) a[i]=i;
若用while得写成int i=0;while(i<n) a[i]=i++;不过整体差别感觉还是不大,还是看自己爱好吧
回复

使用道具 举报

发表于 2009-11-6 02:00:26 | 显示全部楼层 IP:江苏扬州
说句实话,我学C和C++和起来快1年了  对于循环 我都是考虑的for我没有用过while
在我印象中都不知道while怎么用了  哎  这坏毛病要改```````````````````
回复

使用道具 举报

发表于 2009-11-6 02:00:28 | 显示全部楼层 IP:江苏扬州
老师怎能这样教书的,这样很容易扼杀学生的创造性思维的.
回复

使用道具 举报

发表于 2009-11-6 02:00:29 | 显示全部楼层 IP:江苏扬州
还有这样的老师...还是大学老师...有点晕..
回复

使用道具 举报

发表于 2009-11-6 02:00:30 | 显示全部楼层 IP:江苏扬州
以下是引用foreverlh在2007-6-1 20:29:14的发言:
我们老师也是这么说的,不过没你老师那么死板哎..
当循环次数未知时候用while语句更清晰明了.
这个看需求啦,反正我for循环想不出来的时候就会考虑while算法.
而且有些问题,用while比较好,例如
要求你在键盘上持续给一维数组送数,int a[100]
一般情况下肯定用不到100啦,这里100就是个上限,初级数据结构课经常有的.
int a[100],i,j=0;
cout<<"请输入数据,输入-1时结束"<<endl;
cin>>i;
while(i!=-1)
{
a[j]=i;
j++;
cin>>i;
}


用for循环是不是这样写?
int a[100],i,j;
cout<<"请输入数据,输入-1时结束"<<endl;
cin>>i;
for(j=0;i!=-1;j++)
{
a[j]=i;
cin>>i;
}

个人感觉初学的时候while比较好理解一些的说
这里面用for循环写的程序是否有点问题哦,for语句中没有对j的判断条件,如果输入的i不等于-1,那不是要一直循环下去,数组不会越界吗?提出个人愚见,也不一定正确,大虾指导下
回复

使用道具 举报

发表于 2009-11-6 02:00:31 | 显示全部楼层 IP:江苏扬州
for(j=0;i!=-1&&j<100;j++)
这样应该行了吧!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|最新主题|手机版|微赢网络技术论坛 ( 苏ICP备08020429号 )

GMT+8, 2024-10-1 19:31 , Processed in 0.194258 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表