2017年計算機二級C語言上機改錯題考點總結

對上機考試改錯題的做題方法和總結,改錯題的錯誤主要分爲以下幾類:

2017年計算機二級C語言上機改錯題考點總結

1、if或while語句

若錯誤行是if或者while語句,則要注意以下點:

1)首先判斷是否正確書寫if或while關鍵字;

2)然後看有沒有用小括號把整個表達式括起來,若沒有則加上小括號;

3)若條件表達式中有指針變量而且沒有指針運算符時,則加上指針運算符;

4)若if條件表達式中只有一個等於號即數學等號(=),則要改寫成兩個等於號即邏輯等號(= =);

5) 若if條件表達式爲其他的比較運算符,則一般是進行逆轉或加一個等於號;

2、for語句

若錯誤行是for語句,則要注意以下幾點:

1)首先判斷for有沒有書寫正確;

2)然後看for中的表達式是不是用分號(;)隔開,若不是則改爲分號。

記住是分號(;),不是逗號(,)!

3) 再者,分析for中的三個表達式,是否符合題意;

第一個表達式表示起始條件,

第二個表達式表示終止條件,

第三個表達式表示循環變量的變化。

3、return語句

若錯誤行爲return語句,則要注意以下幾點:

1)首先看是不是正確書寫return關鍵字;

2)然後看是不是缺少分號,若是則加上分號即可;

3)再者判斷return後的變量或表達式是否正確;

這種錯誤需要根據題意來分析,分析返回變量或表達式的值和類型。

4、賦值語句

若錯誤行是賦值語句,則要看賦值是否正確,然後看賦值運算符是否寫正確。

5、定義語句

若錯誤行是定義語句,則要注意:

1)首先分析變量類型名是否寫對;

2)然後分析給變量賦初值是否正確;

3)若以上均不是,則看是不是少定義了某個變量或少了花括號;

6、表達式錯誤問題:

若錯誤行中有整數1除以某個表達式或變量時,必須把整數1改爲1.0;若變量或表達式是整型時,則只能進行強制類型轉換

7、字符串類問題

若錯誤行中有字符串結束符,則特別要要注意結束符有沒有寫錯。但是要區分清楚字符‘o’和數字’0’。

8、指針類問題

若錯誤行中有指針變量,並且該變量名之前沒有指針運算符,則一般都是加上指針運算符;

9、函數首部類問題:

若錯誤行是函數首部,則要注意:

1)首先看該行最後有沒有分號,若有則刪掉分號;若中間有分號則要改爲逗號;

2)形參和實參類型不一致問題

①若實參是個地址或數組名或指針變量名,則對應的形參肯定是指針或數組;

②若實參是二維數組名,則對應的'形參應該是指針數組或是二維數組;

③若後面用到某形參的時候有指針運算符,則該形參比爲指針類型;

④若形參是二維數組或指向M個元素的指針變量,則該二維的長度必須與main中對於數組的第二維的長度相同。

3)函數類型不一致問題

①若函數中沒有return語句,則函數類型爲void;

②若函數中有return語句,則函數的類型必須與rerun後的變量類型一致;

記住,調用函數的類型與main中的該函數的類型一致!

10.語法錯誤問題:

1)語句缺少分號。若錯誤號中語句沒有以分號結束則加上分號;

2)變量名不一致。C語言是區分大小寫的,若錯誤行中有大寫字母一般都改爲小寫字母;

11.邏輯錯誤問題:

這種題型主要是表達式錯誤,佔的題量比較多而且我們沒有統一的做題方法,需要我們具體問題具體分析。

12.書寫錯誤問題:

特別注意我們的註釋部分,註釋是以/*開始,以*/結尾,不能有多餘的,有也只能在/*和*/裏面。注意,比如“/***註釋部分*****/*/”是錯誤的!