目前共有8篇帖子。 字体大小:较小 - 100% (默认)▼  内容转换:马新简体▼
 
点击 回复
512 7
今天下午上C语言课的时候,老师把上次程序小测试的批改结果发下来了
一派掌门 二十级
1楼 发表于:2015-11-12 21:03
这是同桌的:



这是我的:
一派掌门 二十级
2楼 发表于:2015-11-12 21:06
其中if (counter>=5)这条语句被扣了1分。老师说,这条语句虽然对程序运行没有任何影响,但是我这里逻辑有问题,因为按理说这里counter是永远不可能大于5的,因此只需要写counter==5就行了。
 
一派掌门 二十级
3楼 发表于:2015-11-12 21:10
但是这是我这么多年写程序的基本习惯,把==5写成>=5主要是为了容错,意思就是说counter只要出现了大于5的值就强制归零并换行。而不至于因为前面的程序有bug,出现了counter>5的情况却未及时换行清零导致不可预料的结果,甚至出错死机,这种情况在单片机程序中就比较容易出现,比如外界环境干扰就有可能使程序跑飞。
不过这里只是一个很简单的C语言小程序,而且是在计算机上执行的,所以写>=完全没必要。。。。。出错的概率几乎为0
 
一派掌门 二十级
4楼 发表于:2015-11-12 21:11
虽然我这么多年的编程习惯是把计数器清零的条件==n写成>=n,但是在考试中我还是得要注意这是一个扣分点。
 
一派掌门 二十级
5楼 发表于:2015-11-12 21:21
还有就是,VC6中的float类型的变量,赋值的时候要在数字后面加f,比如:float a = 4.3f,否则就会出现警告。但是课本中却没有加f,老师之前也以为加了f肯定是错的,编译会出错。所以考试时,还是不要加f,避免被扣分。
 
一派掌门 二十级
6楼 发表于:2015-11-12 21:23
第二题中的while那个左大括号我忘了换行,不过这没有什么。因为C语言并没有强制规定所有的大括号必须单独占一行,只是习惯上写C程序的时候大括号单独占一行。
 
见习魔法师 二级
7楼 发表于:2015-11-12 21:53
太较真了老师 确实没必要
 
初级架构工程师 十五级
8楼 发表于:2015-11-13 07:26

回复:7楼

就是,应当联系实际!

 

回复帖子

内容:
用户名: 您目前是匿名发表
验证码:
(快捷键:Ctrl+Enter)
 

本帖信息

点击数:512 回复数:7
评论数: ?
作者:巨大八爪鱼
最后回复:JosephHeinrich
最后回复时间:2015-11-13 07:26
 
©2010-2025 Purasbar Ver2.0
除非另有声明,本站采用知识共享署名-相同方式共享 3.0 Unported许可协议进行许可。