點(diǎn)擊查看:2018年3月全國計(jì)算機(jī)二級(jí)C語言考試強(qiáng)化模擬題匯總
1、程序流程圖中帶有箭頭的線段表示的是( )。
A.圖元關(guān)系
B.數(shù)據(jù)流
C.控制流
D.調(diào)用關(guān)系
參考答案:C
參考解析:在數(shù)據(jù)流圖中,用標(biāo)有名字的箭頭表示數(shù)據(jù)流。在程序流程圖中,用標(biāo)有名字的箭頭表示控制流。所以選擇C。
2、有以下程序:
程序運(yùn)行后的輸出結(jié)果是( )。
A.16
B.1
C.32
D.0
參考答案:B
參考解析:無符號(hào)整型變量a的值為8,二進(jìn)制表示為00001000,右移3位舌為00000001,即十進(jìn)制的1,所以輸出1。
3、若有定義:float x=1.5;int a=1,b=3,c=2;則正確的switch語句是( )。
參考答案:A
參考解析: B選項(xiàng)中switch((int)x);語句中不應(yīng)該有最后的分號(hào)。switch(expr1),中的expr1不能用浮點(diǎn)類型或long類型,也不能為一個(gè)字符串,所以C錯(cuò)誤。cas后面常量表達(dá)式的類型必須與switch后面表達(dá)式的類型一致,所以D錯(cuò)誤。
4、結(jié)構(gòu)化程序設(shè)計(jì)的基本原則不包括( )。
A.多態(tài)性
B.自頂向下
C.模塊化
D.逐步求精
參考答案:A
參考解析: 結(jié)構(gòu)化程序設(shè)計(jì)的思想包括:自頂向下、逐步求精、模塊化、限制使用goto語句,所以選擇A。
5、有以下函數(shù):
函數(shù)的功能是( )。
A.將y所指字符串賦給x所指存儲(chǔ)空間
B.查找x和y所指字符串中是否有‘\0’
C.統(tǒng)計(jì)x和y所指字符串中最前面連續(xù)相同的字符個(gè)數(shù)
D.統(tǒng)計(jì)x和y所指字符串中相同的字符個(gè)數(shù)
參考答案:C
參考解析: 本題中由循環(huán)條件可知遇到‘\0’或x與y所指的字符的值不等中的一個(gè)條件時(shí)就結(jié)束。所以功能是統(tǒng)計(jì)x和y所指字符串中最前面連續(xù)相同的字符個(gè)數(shù)。
6、下面結(jié)構(gòu)體的定義語句中,錯(cuò)誤的是( )。
A.struct ord{int x;int y;int z;}struct ord a;
B.struct ord{int x;int y;int z;};struct ord a;
C.struct ord{int x;int y;int z;}a;
D.struct{int x;int y;int z;}a;
參考答案:A
參考解析: A選項(xiàng)struct ord{int x;int y;int z;}struct ord a;錯(cuò)誤,不能在定義結(jié)構(gòu)體的同時(shí),又用結(jié)構(gòu)體類型名定義變量。應(yīng)該寫成B選項(xiàng)或者D選項(xiàng)的格式。
7、有以下程序:
在VC 6.0平臺(tái)上編譯運(yùn)行,程序運(yùn)行后的輸出結(jié)果是( )。
A.10,6
B.4,4
C.2,4
D.4,8
參考答案:D
參考解析: C語言中利用sizeof()函數(shù)判斷數(shù)據(jù)類型長度,在VC 6.0平臺(tái)中,整型int占有4個(gè)字節(jié),double型數(shù)據(jù)占有8個(gè)字節(jié)。
11、有以下程序:
程序運(yùn)行后的輸出結(jié)果是(?)。
A.12 7
B.12 12
C.11 11
D.11 7
參考答案:D
參考解析:本題考查宏定義的用法,宏定義只是做個(gè)簡單的替換,所以本題中執(zhí)行f(2)=(2*N+1)=11,執(zhí)行f(1+1)=(1+1*N+1)=7。選項(xiàng)D正確。
12、設(shè)棧的存儲(chǔ)空間為S(1:50),初始狀態(tài)為top=51,F(xiàn)經(jīng)過一系列正常的人棧與退棧操作后,top=50,則棧中的元素個(gè)數(shù)為(??)
A.1
B.0
C.50
D.49
答案:A
答案解析:棧是一種特殊的線性表,它所有的插入與刪除都限定在表的同一端進(jìn)行。入棧運(yùn)算即在棧頂位置插人一個(gè)新元素,退棧運(yùn)算即取出棧頂元素賦予指定變量。棧為空時(shí),棧頂指針top=0,經(jīng)過入棧和退棧運(yùn)算,指針始終指向棧頂元素。初始狀態(tài)為top=51,當(dāng)top=50時(shí),則棧中S(50:51)存儲(chǔ)著元素,51-50=1.元素個(gè)數(shù)為l。故本題答案為A選項(xiàng)。
13、以下選項(xiàng)中,當(dāng)X為大于1的奇數(shù)時(shí),值為0的表達(dá)式是( ):
A.x%2==0
B.x/2
C.x%2!=0
D.x%2==1
答案:D
參考解析: 算術(shù)運(yùn)算符的優(yōu)先級(jí)高于關(guān)系運(yùn)算符的優(yōu)先級(jí),所以當(dāng)X為大于1的奇數(shù)時(shí),A選項(xiàng)的值為假,即0。B選項(xiàng)的值為不定值,但絕對(duì)不是0。C選項(xiàng)的值為真,即1。D選項(xiàng)的值為真,即1。
14、若有定義語句:
int a[2][3],*p[3];
則以下語句中正確的是( )。
A.p=a;
B.p[0]=8;
C.p[0]=&a[1][2];
D.p[1]=&a;
參考答案:C
參考解析: A選項(xiàng)錯(cuò)誤,因?yàn)閜是指向一個(gè)指針數(shù)組,作為數(shù)組名,不能指向別的地方。B選項(xiàng)錯(cuò)誤,因?yàn)閜[0]是一個(gè)int指針,也就是int*;而a是一個(gè)指向指針的指針int**。C選項(xiàng)正確,因?yàn)閜[0]是一個(gè)int*a[1][2]是int,&a[1][2]是int*,類型吻合。D選項(xiàng)錯(cuò)誤,因?yàn)閍作為數(shù)組名,不能取地址。即使能取,P[1]是int*,&a是int***,類型不對(duì)。因此C選項(xiàng)正確。
15、以下不合法的字符常量是( )。
A.'\\'
B.'\"'
C.'\018'
D.'\xcc'
參考答案:C
參考解析: 轉(zhuǎn)義字符中,八進(jìn)制的表示形式為\ddd,但是八進(jìn)制中不能包含數(shù)字8,所以C選項(xiàng)不合法。
16、以下選項(xiàng)中能正確定義二維數(shù)組的選項(xiàng)是( )。
A.double a[][3]={2*3};
B.double a[][3];
C.double a[][3]={};
D.double a[2][3]={{1.0},{2.0},{3.0,4.0}};
參考答案:A
參考解析: 如果第一維的長度沒有指定.則定義的同時(shí)需要完成初始化,否則不知道分配多大的內(nèi)存空間給它,所以選項(xiàng)B、C錯(cuò)誤;二維數(shù)組a[2][3]中只有兩個(gè)元素,都是一維數(shù)組,一維下標(biāo)最大只能是a[1],所以選項(xiàng)D錯(cuò)誤;若完成初始化的二維數(shù)組,第一維的長度沒有指定,則第一維的大小按如下規(guī)則確定:若初值個(gè)數(shù)能被第二維大小整除,所得的商就是第一維的大小;若不能整除,則所得的商加l作為第一維的大小,所以選項(xiàng)A相當(dāng)于:double a[1][3]={6};其中a[0][0]=6,其他元素賦值0,故選項(xiàng)A正確,答案為A。
17、以下敘述中正確的是( )。
A.當(dāng)對(duì)文件的讀(寫)操作完成之后,必須將它關(guān)閉,否則可能導(dǎo)致數(shù)據(jù)丟失
B)打開一個(gè)已存在的文件并進(jìn)行了寫操作后,原有文件中的全部數(shù)據(jù)必定被覆蓋
B.在一個(gè)程序中當(dāng)對(duì)文件進(jìn)行了寫操作后,必須先關(guān)閉該文件然后再打開,才能讀到第1個(gè)數(shù)據(jù)
C.C語言中的文件是流式文件,因此只能順序存取數(shù)據(jù)
參考答案:A
參考解析: 文件一旦使用完畢,應(yīng)該使用關(guān)閉文件函數(shù)把文件關(guān)閉,以避免出現(xiàn)文件數(shù)據(jù)丟失等錯(cuò)誤,所以選項(xiàng)A正確;若使用fopen打開文件函數(shù)打開文件時(shí),指定打開方式為 ‘a(chǎn)’,則可以向文件追加信息,而不是覆蓋原文件內(nèi)容,故B選項(xiàng)錯(cuò)誤;在文件被打開后,使用文件定位函數(shù)rewind或fseek函數(shù),可以將文件指針移到文件的任何位置,所以在寫操作完成后,可以直接將文件指針定位到文件首,接著讀數(shù)據(jù),而不需要先關(guān)閉文件,再打開讀取,故C選項(xiàng)錯(cuò)誤;使用文件定位函數(shù)可以隨機(jī)讀寫文件,故D選項(xiàng)錯(cuò)誤。所以本題答案為A。
18、關(guān)于程序模塊化,以下敘述錯(cuò)誤的是( )。
A.程序模塊化可以提高程序運(yùn)行的效率
B.程序模塊化可以提高程序編制的效率
C.程序模塊化可以提高程序代碼復(fù)用率
D.程序模塊化可以提高調(diào)試程序的效率
參考答案:A
參考解析: 程序模塊化的目的是為了降低程序的復(fù)雜度,使程序設(shè)計(jì)、調(diào)試和維護(hù)等操作簡單化,降低程序的復(fù)雜度可以提高程序的編制效率和調(diào)試效率,每個(gè)模塊可以復(fù)用,提高了程序代碼的復(fù)用率,故選項(xiàng)B、C、D正確;程序的運(yùn)行效率與程序的算法、實(shí)現(xiàn)有關(guān),與程序模塊化無關(guān),故答案選A。
19、若要通過位運(yùn)算使整型變量a中的各位數(shù)字全部清零,以下選項(xiàng)正確的是( )。
A.a=a&0;
B.a=a10;
C.a=a^0;
D.a=!a;
參考答案:A
參考解析: 本題考查位運(yùn)算符和位運(yùn)算!癐”運(yùn)算符,l|0=1,0|0=0,所以選項(xiàng)B中a變量的各位數(shù)字保持不變,故B錯(cuò)誤;“”’運(yùn)算符,l^0=1,O^0=1,所以選項(xiàng)C中a變量的各位數(shù)字中,1保持不變,0變成1,故C錯(cuò)誤;“!”運(yùn)算符,!1=0,! 0=1,所以選項(xiàng)D中a變量的個(gè)位數(shù)字中,1變成0,0變成1,故D錯(cuò)誤;“&”運(yùn)算符,l&0=0,0&0=0,所以選項(xiàng)A中各位數(shù)字全部清零,故答案為A。
20、程序調(diào)試的任務(wù)是( ),
A.設(shè)計(jì)測試用例
B.驗(yàn)證程序的正確性
C.發(fā)現(xiàn)程序中的錯(cuò)誤
D.診斷和改正程序中的錯(cuò)誤
參考答案:D
參考解析: 程序調(diào)試的任務(wù)是診斷和改正程序中的錯(cuò)誤。
微信搜索"考試吧"了解更多考試資訊、下載備考資料
相關(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)蒙古 |