|
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程序的時候大括號單獨佔一行。
|
|
太較真了老師 確實沒必要
|
|
|