2016計算機二級《C語言》非選擇題練習及答案
一、程序填空題
下列給定程序中,函數fun的功能是:將s所指字符串中的所有數字字符移到所有非數字字符之后,并保持數字字符串和非數字字符串原有的次序。例如,s所指的字符串為“def35adh3kjsdi7”,執行后結果為“defadhajsdf3537”。請在程序的下劃線處填人正確的內容并將下劃線刪除,使程序得出正確的結果。注意:部分源程序在文件BLANK1.C中。不得增行或刪行,也不得更改程序的結構!
二、程序修改題
下列給定程序中函數fun的功能是:將tt所指字符串中的小寫字母全部改為對應的大寫字母,其他字符不變。例如,若輸入“Ab,cD”,則輸出“AB,CD”。請改正程序中的錯誤,使它能得出正確的結果。注意:部分源程序在文件MODI1.C中,不得增行或刪行,也不得更改程序的結構!
三、程序設計題
編寫函數fun,其功能是:求ss所指字符串中指定字符的個數,并返回此值。例如,若輸入字符串123412132,輸入字符為1,則輸出3。注意:部分源程序在文件PROG1.C中。請勿改動主函數main和其他函數中的任何內容,僅在函數fun的花括號中填入你編寫的若干語句。
參考答案
一、程序填空題
【考點分析】
本題考查:指針型變量;數組變量賦值.for循環語句。
【解題思路】
填空1:根據函數fun中的內容可知,數組t1存儲了s中的非數字字符,數組t2存儲了s中的數字字符,為了存儲下一個數字字符,下標j要進行加1操作。
填空2:將s串中的數字與非數字字符分開后,要先將非數字字符放入字符串s中,因此填人s[i]=t1[i]。
填空3:最后將數字字符加到s串之后,并且i要小于數字的個數j。
二、程序修改題
【考點分析】
本題考查:if語句條件表達式;小寫字母轉大寫字母的方法。
【解題思路】
(1)分析本題可知,要判斷字符是否為小寫字母,即判斷其是否在a~z之間,所以這里需要進行連續的比較,用&&。
(2)從ASCII碼表中可以看出,小寫字母的ASCII碼值比對應大寫字母的ASCII值大32。將字符串中的小寫字母改為大寫字母的方法是:從字符串第一個字符開始,根據ASCII碼值判斷該字母是不是小寫字母,若是,則ASCII碼值減32即可。
三、程序設計題
【參考答案】
【考點分析】
本題考查:for循環語句遍歷字符串,并通過if條件語句,判斷字符串是否結束。
【解題思路】
從字符串中查找指定字符,需要使用循環判斷結構,循環語句用來遍歷字符串,循環條件為字符串沒有結束,即當前字符不是‘\O’,判斷語句用來判斷當前字符是否為指定字符。最后返回指定字符的個數。
【計算機二級《C語言》非選擇題練習及答案】相關文章:
計算機二級《C語言》選擇題題庫及答案11-16
計算機二級《C語言》選擇題題庫與答案07-27
全國計算機二級考試C語言選擇題練習及答案07-01
計算機二級《C語言》練習題及答案04-11