2016年計算機(jī)二級《C語言》非選擇題練習(xí)
一、程序填空題
下列給定程序中,函數(shù)fun的功能是:求ss所指字符串?dāng)?shù)組中長度最短的字符串所在的行下標(biāo),作為函數(shù)值返回,并把其串長放在形參n所指的變量中。ss所指字符串?dāng)?shù)組中共有M個字符串,且串長小于N。請在程序的下劃線處填人正確的內(nèi)容并將下劃線刪除,使程序得出正確的結(jié)果。注意:部分源程序在文件BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!
二、程序修改題
下列給定程序中函數(shù)fun的功能是:將p所指字符串中的所有字符復(fù)制到b中,要求每復(fù)制三個字符之后插入一個空格。例如,若給a輸入字符串:ABCDEFGKHJK,調(diào)用函數(shù)后,字符數(shù)組b中的內(nèi)容為:ABC DEF GHI JK。請改正程序中的錯誤,使它能得出正確的結(jié)果。注意:部分源程序在文件MODI1.C中,不得增行或刪行,也不得更改程序的結(jié)構(gòu)。
三、程序設(shè)計題
下列給定程序中函數(shù)fun的功能是:將p所指字符串中的所有字符復(fù)制到b中,要求每復(fù)制三個字符之后插入一個空格。例如,若給a輸入字符串:ABCDEFGKHJK,調(diào)用函數(shù)后,字符數(shù)組b中的內(nèi)容為:ABC DEF GHI JK。請改正程序中的錯誤,使它能得出正確的結(jié)果。注意:部分源程序在文件MODI1.C中,不得增行或刪行,也不得更改程序的結(jié)構(gòu)。
【參考答案】
程序填空題
(1)M
(2)<
(3)k
【考點分析】
本題考查:for循環(huán)語句的循環(huán)條件;if語句條件表達(dá)式;return語句完成函數(shù)值的返回。
【解題思路】
填空1:題目指出ss所指字符串?dāng)?shù)組中共有M個字符串,所以for循環(huán)語句循環(huán)條件是i
填空2:要求求長度最短的字符串,*n中存放的是已知字符串中長度最短的字符串的長度,這里將當(dāng)前字符串長度與*n比較,若小于*n,則將該長度值賦給*n,因此if語句的條件表達(dá)式為len<*n。
填空3:將最短字符串的行下標(biāo)作為函數(shù)值返回,變量k儲存行下標(biāo)的值。
程序修改題
【考點分析】
本題考查:指針類型變量作為函數(shù)的參數(shù),函數(shù)的參數(shù)不僅可以是整型、實型、字符型等數(shù)據(jù)類型,還可以是指針類型。它的作用是將一個變量的地址傳送到另一個函數(shù)中。
【解題思路】
(1)題目中P是指針型變量作函數(shù)參數(shù),因此繪b[k]賦值時出現(xiàn)錯誤。
(2)題目要求賦值3個字符后加一個空格,所以應(yīng)該是先給b[k]賦值空格,然后變量k再加1。
【解題寶典】
C語言中為了表示指針變量和它所指向的變量之間的關(guān)系,在程序中用“*”符號表示“指向”,例如,pointer代表指針變量.而*pointer是pointer所指向的變量。
程序設(shè)計題
【考點分析】
本題考查:結(jié)構(gòu)體類型成員運算,指向結(jié)構(gòu)體類型的指針變量作函數(shù)參數(shù)。
【計算機(jī)二級《C語言》非選擇題練習(xí)】相關(guān)文章:
計算機(jī)二級《C語言》非選擇題練習(xí)及答案201607-24
2016計算機(jī)二級《C語言》非選擇題練習(xí)及答案06-23
2016年計算機(jī)二級《C++》非選擇題練習(xí)08-05
2016年計算機(jī)二級《C++》非選擇題練習(xí)及答案07-06
2017計算機(jī)二級C語言選擇題備考練習(xí)07-04
2016年計算機(jī)二級C語言選擇題練習(xí)01-11
計算機(jī)二級《VB》非選擇題練習(xí)201604-03
計算機(jī)二級C語言選擇題02-27