點(diǎn)擊查看:2018年9月計(jì)算機(jī)二級C語言考試鞏固練習(xí)題匯總
1、程序中已構(gòu)成如下圖所示的不帶頭結(jié)點(diǎn)的單向鏈表結(jié)構(gòu),指針變量s、p、q均已正確定義,并用于指向鏈表結(jié)點(diǎn),指針變量s總是作為指針指向鏈表的第一個(gè)結(jié)點(diǎn)。
若有以下程序段:
該程序段實(shí)現(xiàn)的功能是( )。
A.刪除尾結(jié)點(diǎn)
B.尾結(jié)點(diǎn)成為首結(jié)點(diǎn)
C.刪除首結(jié)點(diǎn)
D.首結(jié)點(diǎn)成為尾結(jié)點(diǎn)
參考答案:D
參考解析: 本題考查鏈表的操作,本題中首先是s指向了它的下個(gè)結(jié)點(diǎn),題目中說明了s總是指向鏈表的第一個(gè)結(jié)點(diǎn),然后while循環(huán)找到鏈表的最后一個(gè)元素,然后最后一個(gè)元素指向了之前鏈表的頭結(jié)點(diǎn),之前頭結(jié)點(diǎn)指向了空結(jié)點(diǎn),所以本題實(shí)現(xiàn)的功能是使首結(jié)點(diǎn)成為尾結(jié)點(diǎn)。選項(xiàng)D正確。
2、下列選項(xiàng)中不屬于結(jié)構(gòu)化程序設(shè)計(jì)原則的是( )。
A.可封裝
B.自頂向下
C.模塊化
D.逐步求精
參考答案:A
參考解析: 結(jié)構(gòu)化程序設(shè)計(jì)的思想包括:自頂向下、逐步求精、模塊化、限制使用goto語句,所以選擇A。
3、有以下程序:
以上程序執(zhí)行后abc.dat文件的內(nèi)容是( )。
A.China
B.Chinang
C.ChinaBeijing
D.BeijingChina
參考答案:B
參考解析: 本題考查文件操作函數(shù),fwrite和rewind函數(shù),題目中先是將a2字符串寫入adc.dat中,然后將寫指針回到文件開頭,然后寫入sl字符串,那么s1字符串就將前5個(gè)字符覆蓋,所以最終結(jié)果為Chinang,選項(xiàng)B正確。
4、設(shè)有定義:
struct complex
{ int real,unreal;}data1={1,8},data2;
則以下賦值語句中錯(cuò)誤的是( )。
A.data2=(2,6);
B.data2=data1;
C.data2.real=data1.real;
D.data2.real=data1.unreal;
參考答案:A
參考解析: A選項(xiàng)中可以在聲明變量的同事為data2賦值,但是data2=(2,6);應(yīng)寫作data2={2,6}。所以選擇A。
5、有以下程序(注:字符a的ASCII碼值為97):
程序運(yùn)行后的輸出結(jié)果是( )。
A.789
B.abc
C.7890
D.979899
參考答案:A
參考解析:因?yàn)樾懽址鸻,b,c的ASCII碼值分別為97,98,99,而在do while循環(huán)語句中,每次對字符的ASCII碼值取余數(shù)并輸出,所以分別輸出7,8,9。
6、有以下程序:
程序運(yùn)行后的輸出結(jié)果是( )。
A.7
B.10
C.8
D.9
參考答案:D
參考解析: 調(diào)用f(a,b)函數(shù)返回3,調(diào)用f(a,c)函數(shù)返回6,所以外層調(diào)用f(f(a,b),f(a,c));即調(diào)用f(3,6)函數(shù)返回9。
7、以下四個(gè)程序中,完全正確的是( )。
參考答案:B
參考解析: C語言中注釋語句的注釋方法是:/*注釋內(nèi)容*/或//注釋一行。所以A與C錯(cuò)誤,D選項(xiàng)中預(yù)編譯命令indade前丟掉了”#”號。所以選擇B。
8、下列敘述中正確的是( )。
A.在switch語句中,不一定使用break語句
B.在switch語句中必須使用default
C.break語句必須與switch語句中的case配對使用
D.break語句只能用于switch語句
參考答案:A
參考解析: default語句在switch語句中可以省略,所以B錯(cuò)誤;switch語句中并非每個(gè)case后都需要使用break語句,所以C錯(cuò)誤;break語句還可以用于for等循環(huán)結(jié)構(gòu)中,所以D錯(cuò)誤。
9、有以下程序:
程序運(yùn)行后的輸出結(jié)果是( )。
A.7
B.5
C.3
D.9
參考答案:C
參考解析: 向switch語句塊傳送參數(shù)后,編譯器會(huì)先尋找匹配的case語句塊,找到后就執(zhí)行該語句塊,遇到break跳出;如果沒有匹配的語句塊,則執(zhí)行default語句塊。case與default沒有順序之分。所以第一次循環(huán)k的值為1,執(zhí)行c+=k,c的值為l,再執(zhí)行case 2后的語句c++,c的值為2,遇到break語句跳出循環(huán);第二次循環(huán)k的值為2,執(zhí)行case 2后面的語句c++,c的值為3,跳出循環(huán)。
10、以下關(guān)于typedef的敘述錯(cuò)誤的是( )。
A.用typedef可以增加新類型
B.typedef只是將已存在的類型用一個(gè)新的名字來代替
C.用typedef可以為各種類型說明一個(gè)新名,但不能用來為變量說明一個(gè)新名
D.用typedef為類型說明一個(gè)新名,通?梢栽黾映绦虻目勺x性
參考答案:A
參考解析: typedef并不是增加了新類型,而是用一個(gè)新名字替代已存在的類型,不能為變量說明一個(gè)新名,使用typedef可以增強(qiáng)程序的可移植性。所以A選項(xiàng)錯(cuò)誤。
微信搜索"考試吧"了解更多考試資訊、下載備考資料
相關(guān)推薦:
2018年9月全國計(jì)算機(jī)等級考試試題匯總(各科目)
2018年全國計(jì)算機(jī)等級考試必做試題匯總(各科目)
2018年全國計(jì)算機(jī)等級考試復(fù)習(xí)知識(shí)點(diǎn)匯總(各科目)
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |