點擊查看:2015計算機(jī)二級《C語言》精選練習(xí)題及答案匯總
1[填空題]下列給定程序中,函數(shù)fun的功能是:把形參a所指數(shù)組中的奇數(shù)按原順序依次存放到a[0]、a[1]、a[2]…中,把偶數(shù)從數(shù)組中刪除,奇數(shù)個數(shù)通過函數(shù)值返回。
例如,若a所指數(shù)組中的數(shù)據(jù)最初排列為:9,1,4,2,3,6,5,8,7,刪除偶數(shù)后,a所指數(shù)組中的數(shù)據(jù)為:9,1,3,5,7,返回值為5。
請在程序的下畫線處填入正確的內(nèi)容并將下畫線刪除.使程序得出正確的結(jié)果。
注意:部分源程序給出如下。
不得增行或刪行,也不得更改程序的結(jié)構(gòu)!
試題程序:
參考解析:
【參考答案】
(1)1 (2)J++ (3)J
【考點分析】
本題考查:if語句,條件表達(dá)式;自增、自減運算符;函數(shù)返回值。
【解題思路】
填空l:根據(jù)題目要求,需進(jìn)行奇偶數(shù)的判定,可以通過if條件語句來判斷數(shù)組元素是否為奇數(shù),如果元素不能被2整除,則為奇數(shù),所以填入if(a[i]%2==1)。
填空2:將為奇數(shù)的元素重新存放到數(shù)組的前面,同時下標(biāo)增1。
填空3:函數(shù)返回值需要返回數(shù)組中奇數(shù)的個數(shù),因此返回變量J。
【解題寶典】 、
奇數(shù)和偶數(shù)的判定方法,對2求余運算,結(jié)果為0是偶數(shù),結(jié)果為1是奇數(shù)。
自增l、自減1運算符:自增l運算符記為“++”,其功能是使變量的值自增1;自減1運算符記為“一一”,其功能是使變量值自減l。自增1、自減1運算符均為單目運算符,具有右結(jié)合性,有以下幾種形式:
++i:i自增l后再參與其他運算。
_-i:1’自減1后再參與其他運算。
i++:i參與運算后,i的值再自增1 0
i一一:i參與運算后,i的值再自減1。
2[簡答題]請編寫一個函數(shù)fun,它的功能是:將ss所指字符串中所有下標(biāo)為奇數(shù)位置的字母轉(zhuǎn)換為大寫(若該位置上不是字母,則不轉(zhuǎn)換)。
例如,若輸入“aboaEf9”,則應(yīng)輸出“aBe4EF9”。
注意:部分源程序在文件PROGl.C中。
請勿改動主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句。
試題程序:
%參考解析:
【參考答案】
【解題思路】
該題要求將給定字符串中奇數(shù)位置的字母轉(zhuǎn)換為大寫,需要先判斷奇數(shù)位置以及此位置的字符是否是小寫字母,如果是再通過其轉(zhuǎn)換方法進(jìn)行轉(zhuǎn)換。
從c語言的學(xué)習(xí)中知道,只要將小寫字母減去32即轉(zhuǎn)成大寫字母,將大寫字母加上32即轉(zhuǎn)成小寫字母。本程序用if語句實現(xiàn)轉(zhuǎn)換功能。
3[單選題]一個棧的初始狀態(tài)為空。現(xiàn)將元素1、2、3、4、5、A、B、c、D、E依次入棧,然后再依次出棧,則元素出棱的順序是( )。
A.12345ABCDEB.EDCBA54321C.ABCDEl2345D.54321EDCBA
參考答案:B
參考解析:棧是先進(jìn)后出的原則組織數(shù)據(jù),所以人棧最早的最后出棧,所以選擇B。
4[單選題] 有以下程序
程序運行后的輸出結(jié)果是
A.#N#B.#F#C.MMMD.MO#
參考答案:A
參考解析:for語句中把a(bǔ)rray數(shù)組首地址值賦給ptr,ptr++表示每次執(zhí)行完循環(huán)體后,ptr指向下一數(shù)組元素,當(dāng)指針指向值為0時,輸出#,否則´M´再加上指針對應(yīng)數(shù)組值進(jìn)行輸出,當(dāng)* ptr=1時,´M´+l=´N´,結(jié)果輸出為#N#,答案為A選項。
相關(guān)推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |