點(diǎn)擊查看:2018年3月全國計(jì)算機(jī)二級(jí)C語言考試強(qiáng)化模擬題匯總
1、以下不構(gòu)成無限循環(huán)的語句或語句組是( )。
A.n=0:
do{++n;}while(n<=0);
B.n=0;
while(1){n++;}
C.n=10;
while(n);{n--;}
D.for(n=0,i=1;;i++)n+=i;
參考答案:A
參考解析: 選項(xiàng)A中do后面的語句只執(zhí)行了一次便結(jié)束了循環(huán);B選項(xiàng)中條件while(1)永遠(yuǎn)成立,所以是死循環(huán);C選項(xiàng)中n的值為10,而循環(huán)體為空語句,所以wilile(n)永遠(yuǎn)為真,進(jìn)入死循環(huán);D選項(xiàng)中for語句第二個(gè)表達(dá)式為空,所以沒有判別條件,進(jìn)入死循環(huán)。
2、若a是數(shù)值類型,則邏輯表達(dá)式(a==1)||(a!=1)的值是( )。
A.1
B.0
C.2
D.不知道a的值,不能確定
參考答案:A
參考解析: 邏輯或”||”要求只要兩邊的運(yùn)算對(duì)象有一個(gè)非零,結(jié)果就為真。雖然不知道a的值,但是若a為l,則左邊運(yùn)算對(duì)象為1;若a的值不是1,則右邊運(yùn)算對(duì)象的值為1,所以總能保證一邊非零,所以結(jié)果為真,即1。
3、程序中已構(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正確。
4、下列選項(xiàng)中不屬于結(jié)構(gòu)化程序設(shè)計(jì)原則的是( )。
A.可封裝
B.自頂向下
C.模塊化
D.逐步求精
參考答案:A
參考解析: 結(jié)構(gòu)化程序設(shè)計(jì)的思想包括:自頂向下、逐步求精、模塊化、限制使用goto語句,所以選擇A。
5、支持子程序調(diào)用的數(shù)據(jù)結(jié)構(gòu)是( )。
A.棧
B.樹
C.隊(duì)列
D.二叉樹
參考答案:A
參考解析: 棧支持子程序調(diào)用。棧是一種只能在一端進(jìn)行插入或刪除的線性表,在主程序調(diào)用子函數(shù)時(shí)要首先保存主程序當(dāng)前的狀態(tài),然后轉(zhuǎn)去執(zhí)行子程序,最終把子程序的執(zhí)行結(jié)果返回到主程序中調(diào)用子程序的位置,繼續(xù)向下執(zhí)行,這種調(diào)用符合棧的特點(diǎn),因此本題的答案為A。
6、有以下程序:
以上程序執(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正確。
7、設(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。
1、某二叉樹共有7個(gè)結(jié)點(diǎn),其中葉子結(jié)點(diǎn)只有l(wèi)個(gè),則該二叉樹的深度為(假設(shè)根結(jié)點(diǎn)在第1層)( )。
A.3
B.4
C.6
D.7
參考答案:D
參考解析: 根據(jù)二叉樹的基本性質(zhì)3:在任意一棵二叉樹中,多為0的葉子結(jié)點(diǎn)總比度為2的結(jié)點(diǎn)多一個(gè),所以本題中度為2的結(jié)點(diǎn)為1-1=0個(gè),所以可以知道本題目中的二叉樹的每一個(gè)結(jié)點(diǎn)都有一個(gè)分支,所以共7個(gè)結(jié)點(diǎn)共7層,即度為7。
2、有以下程序:
程序運(yùn)行后的輸出結(jié)果是( )。
A.t1=9 t2=4
B.t1=4 t2=9
C.t1=9 t2=9
D.t1=1 t2=4
參考答案:A
參考解析: 由程序可知,main函數(shù)的for循環(huán)中i的取值為1、2、3、4。T1初值為10,t2初值為0,當(dāng)i-1時(shí),傳人函數(shù)m1參數(shù)為:1、10,因?yàn)?<10,所以函數(shù)m1的返回值為2×1+1=3;傳人函數(shù)m2的參數(shù)為1、0,因?yàn)?>0,所以返回值為1;即第一輪循環(huán)后,t1=3,t2=1。當(dāng)i=2時(shí),傳人函數(shù)m1的參數(shù)為2、3,因?yàn)?<3,所以函數(shù)返回值為2×2+1=5;傳人函數(shù)m2的參數(shù)為2、1,因?yàn)?>1,所以函數(shù)返回值為2;即第二輪循環(huán)后,t1=5,t2=2;當(dāng)i=3時(shí),傳人函數(shù)m1的參數(shù)為3、5,因?yàn)?<5,所以返回值為2×3+1=7;傳人函數(shù)m2的參數(shù)為3、2,因?yàn)?>2,所以返回值為3;即第三輪循環(huán)后,t1=7,t2=3;當(dāng)i-4時(shí),傳人函數(shù)m1的參數(shù)為4、7,因?yàn)?<7,所以函數(shù)返回值為2x4+1=9,傳人函數(shù)m2的參數(shù)為4、3,因?yàn)?>3,所以函數(shù)返回值為4,即第四輪循環(huán)后,t1=9,t2=4。故答案選A(仔細(xì)分析可以發(fā)現(xiàn),對(duì)于m1函數(shù),由于第一次1<10,導(dǎo)致后面每次參數(shù)x都是i,而參數(shù)y都是2×i-1,返回值都是2×i+1;同理,對(duì)于m2函數(shù),由于第一次1>0,導(dǎo)致后面每次參數(shù)x都是i,而y都是i-1,返回值都是i,所以最終結(jié)果為t1=2x4+1,t2=4)。
3、以下程序擬讀取一個(gè)姓氏,查找其對(duì)應(yīng)的年齡并輸出:
程序有語法錯(cuò)誤,出錯(cuò)的是( )。
參考答案:A
參考解析: 語句gets(&p- >name)中,gets的參數(shù)應(yīng)該是成員變量name數(shù)組的首地址。而&p->name是首先獲取數(shù)組name的首地址,然后再對(duì)首地址取地址符,所以這是錯(cuò)誤的,正確參數(shù)應(yīng)該是:gets(p->name);,故答案選A。
4、設(shè)有以下函數(shù):
則下面對(duì)函數(shù)指針的定義和賦值均正確的是( )。
參考答案:D
參考解析: 函數(shù)的參數(shù)可以是指針類型。它的作用是將一個(gè)變量的地址傳送到另一個(gè)函數(shù)中。函數(shù)名代表函數(shù)的入口地址,指向函數(shù)的指針應(yīng)該定義為void(* pf)()。如果定義為void*pf(),則表示函數(shù)pf返回值為一個(gè)基類型為void的指針。因此D選項(xiàng)正確。
5、以下選項(xiàng)中正確的定義語句是( )。
A.double,a,b;
B.double a=b=7;
C.double a;b;
D.double a=7,b=7;
參考答案:D
參考解析: A選項(xiàng)中變量類型符double后面不能有逗號(hào)。B選項(xiàng)中變量b不能先使用再定義,應(yīng)該寫成選項(xiàng)D中的格式。C選項(xiàng)中變量a后面應(yīng)該是逗號(hào)而不是分號(hào)。
6、負(fù)責(zé)數(shù)據(jù)庫中查詢操作的數(shù)據(jù)庫語言是( )。
A.數(shù)據(jù)定義語言
B.數(shù)據(jù)管理語言
C.數(shù)據(jù)操縱語言
D.數(shù)據(jù)控制語言
參考答案:C
參考解析: 數(shù)據(jù)定義語言:負(fù)責(zé)數(shù)據(jù)的模式定義與數(shù)據(jù)的物理存取構(gòu)建;數(shù)據(jù)操縱語言:負(fù)責(zé)數(shù)據(jù)的操縱,包括查詢及增、刪、改等操作;數(shù)據(jù)控制語言:負(fù)責(zé)數(shù)據(jù)完整性、安全性的定義與檢查以及并發(fā)控制、故障恢復(fù)等功能。
7、有以下程序:
程序運(yùn)行后的輸出結(jié)果是( )。
A.1,2,3,0,0,0,0,0,0,0,
B.1,2,3,1,2,3,0,0,0,0,
C.123,0,0,0,0,123,0,0,0,0,
D.1,2,3,0,0,1,2,3,0,0,
參考答案:D
參考解析: 本題考查文件操作函數(shù),兩次fwrite后,fp文件中已經(jīng)寫入1,2,3,0,0,l,2,3,0,0然后將文件fp中的內(nèi)容重新寫入數(shù)組a中,最后輸出a為l,2,3,0,0,1,2,3,0,0,所以選項(xiàng)D正確。
8、以下選項(xiàng)中,合法的c語言實(shí)數(shù)是( )。
A..4eO
B.4.3e0.2
C.FA.8
D.0.29E
參考答案:A
參考解析: C語言中,實(shí)數(shù)有兩種形式:十進(jìn)制小數(shù)形式和指數(shù)形式。由4個(gè)選項(xiàng)可知,本題考查的是實(shí)數(shù)的指數(shù)形式,指數(shù)形式一般為:aEn,其中a為十進(jìn)制數(shù),n為十進(jìn)制整數(shù),表示的值為:a ×10n;B、C選項(xiàng)錯(cuò)在階碼必須是整數(shù),D選項(xiàng)錯(cuò)在無階碼,故答案為A,A的值為:0.4×100=0.4。
微信搜索"考試吧"了解更多考試資訊、下載備考資料
相關(guān)推薦:
2018年全國計(jì)算機(jī)等級(jí)考試必做試題匯總(各科目)
2018年全國計(jì)算機(jī)等級(jí)考試復(fù)習(xí)知識(shí)點(diǎn)匯總(各科目)
2018計(jì)算機(jī)等級(jí)考試報(bào)名時(shí)間|各地報(bào)名入口|報(bào)名條件
2018年全國計(jì)算機(jī)等級(jí)考試時(shí)間|教材目錄(2018年版)
2018全國計(jì)算機(jī)等級(jí)考試備考經(jīng)驗(yàn)及應(yīng)試技巧匯總
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |