|
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程序的时候大括号单独占一行。
|
|
太较真了老师 确实没必要
|
|
|