計算機二級C語言考前模擬試題及答案2016
(1)有以下程序:
程序運行后的輸出結(jié)果是( )。
A.852
B.963
C.741
D.875421
(2)有以下程序:
程序運行后的輸出結(jié)果是( )。
A.let=4
B.m=2
C.m=6
D.m=5
(3)有以下程序:
程序運行后的輸出結(jié)果是( )。
A.6
B.3
C.8
D.12
(4)有以下程序:
則以下函數(shù)調(diào)用語句錯誤的是( )。
A.k:f(a,B.;
B.k:add(a,B.;
C.k=(*f)(a,B.;
D.k=*(a,B.;
(5)有以下程序
(6)下列定義數(shù)組的語句中,正確的是( )。
(7)有以下程序:
程序運行后的輸出結(jié)果是( )。
A.0 3 0 4
B.2 0 5 0
C.3 3 4 4
D.3 0 4 0
(8)有以下程序:
程序運行后的輸出結(jié)果是( )。
A.3
B.4
C.l
D.9
(9)以下語句中存在語法錯誤的是( )。
(10)以下不能將s所指字符串正確復制到t所指存儲空間的是( )。
A.do{*t++=*8++;}while(*s);
B.for(i=0;t[i]=s[i];i++);
C.while(*t=*s){t++;s++;}
D.for(i=0,j=0;t[i++]=s[j++];);
(11)有以下程序:
程序執(zhí)行后的輸出結(jié)果是( )。
A.321,cba
B.abc,l23
C.123,abc
D.lbe,a23
(12)有以下函數(shù):
函數(shù)的功能是( )。
A)將Y所指字符串賦給x所指存儲空間
B.查找x和y所指字符串中是否有
C.統(tǒng)計x和y所指字符串中最前面連續(xù)相同的字符個數(shù)
D.統(tǒng)計x和Y所指字符串中相同的字符個數(shù)
(13)有以下程序:
程序運行后的輸出結(jié)果是( )。
A)Lo
B.30
C.0
D.64
(14)在一個C源程序文件中所定義的全局變量,其作用域為( )。
A.由具體定義位置和extem說明來決定范圍
B.所在程序的全部范圍
C.所在函數(shù)的全部范圍
D.所在文件的全部范圍
(15)以下敘述中錯誤的是( )。
A.可以通過typedef增加新的類型
B.可以用typedef將已存在的類型用一個新的名字來代表
C.用typedef定義新的類型名后,原有類型名仍有效
D.用typedef可以為各種類型起別名,但不能為變量起別名
(16)有以下程序:
程序運行后的輸出結(jié)果是( )。
A.10
B.11
C.20
D.21
(17)有以下程序:
程序運行后的輸出結(jié)果是( )。
A.7.5
B.31.5
C.程序有錯無輸出結(jié)果
D.14.0
(18)有以下程序:
程序運行后的輸出結(jié)果是( )。
A.3
B.4
C.5
D.6
(19)有以下程序:
程序運行后的輸出結(jié)果是( )。
A.1.1.3
B.2,2,3
C.1,2,3
D.3,3,3
(20)以下敘述中正確的是( )。;
A.當對文件的讀(寫)操作完成之后,必須將它關(guān)閉,否則可能導致數(shù)據(jù)丟失
B.打開一個已存在的文件并進行了寫操作后,原有文件中的全部數(shù)據(jù)必定被覆蓋
C.在一個程序中當對文件進行了寫操作后,必須先關(guān)閉該文件然后再打開,才能讀到第1個數(shù)據(jù)
D.c語言中的文件是流式文件,因此只能順序存取數(shù)據(jù).
參考答案與解析
(1)A
【解析】第一次for循環(huán),y的值為9,y%3的值為3,滿足條件打印一一Y,即先減一后打印,所以打印8;第二次for循環(huán),Y的值為7,y%3的值為1,不執(zhí)行打印語句;第三次for循環(huán),y的值為6,y%3的值為0,滿足條件打印一一Y,即先減一后打印,所以打印5;第四次for循環(huán),Y的值為4,不滿足if條件,不執(zhí)行打印語句;第五次for循環(huán),Y的值為3,滿足if條件,打印輸出2;第六次for循環(huán),Y的值為1,不滿足條件,不執(zhí)行打印語句。
(2)C
【解析】第一次外循環(huán)i的值為l,第一次內(nèi)循環(huán)j的值為3,不滿足條件執(zhí)行in}=i}j即m的值為3;第二次j的值為2,不滿足條件執(zhí)行m·=i*j,即m的值為6;第三次j的值為1,不滿足條件執(zhí)行nl*=i*j,即m的值仍為6。第二次外循環(huán)i的值為2,j的值為3,滿足條件,執(zhí)行break語句,跳出循環(huán)。
(3)A
【解析】本題中第一次調(diào)用為fun(8,fun(5,6)),因為fun(5,6)返回值為5,所以第二次調(diào)用為fun(8,5)=6。所以選擇A。
(4)D
【解析】D選項中+f(a,b)表示調(diào)用后返回一個指向整型數(shù)據(jù)的地址指針,即該函數(shù)的返回值為指針類型,所以不能將其賦值給整形變量k。
(5)A
【解析】選項8的正確寫法應為P=&n;選項c的正確寫法應為scanf(”%d”,P);選項D的正確寫法應為printf(”%d\n”,* P)。
(6)A
【解析】數(shù)組說明的一般形式為:類型說明符
數(shù)組名[常量表達式]。B選項中N是變量,不能用變量定義數(shù)組長度。c選項中數(shù)組長度是非法的一串數(shù)字。定義數(shù)組時必須為其指明長度,D選項中數(shù)組長度為空,所以非法。
(7)D
【解析】第一次循環(huán)i為0,i%2為o,執(zhí)行switch(a[O]%2)中的ca∞0語句后內(nèi)容即a[0]++,a[0]的值變成3;第二次循環(huán)i的值為l,i%2為1,執(zhí)行ca∞1:a[i]=0;所以a[1]的值變成0;第三次循環(huán)i的值為2,i%2為0,執(zhí)行switch(a[2]%2)中的ca∞1語句后的內(nèi)容a[2]一一,8[2]的值變成4;第四次循環(huán)i的值為3,i%2為1,執(zhí)行casel:a[i]=0;所以a[3]的值變成0。
(8)B
【解析】每次內(nèi)循環(huán)只循環(huán)一次就結(jié)束,第一次外循環(huán)時t=t+b[0][b[0][0]]=1+b][0]=1+0=第二次外循環(huán)時t=t+b[1][b[1][1]]=1+b[1][1]=1+1=2;第三次外循環(huán)時t=t+b[2][b[2][2]]=2+b[2][2]=2+2=4。
(9)A
【解析】數(shù)組定義后,不可以對數(shù)組整體賦值,s是二維數(shù)組,因SS[1]是一維字符數(shù)組,即字符串,字符串賦值可以使用strcpy(SS[1],”right”);這樣的形式,而選項A中對二維數(shù)組中的第…l維(相當于一個一維數(shù)組)賦值,是不可以的。選項8和D是定義時對數(shù)組初始化,這是可以的。選項c中,將字符串在內(nèi)存中的首地址賦給指針數(shù)組的一個元素,這是可以的。
(10)A
【解析】do{*t++=}S++;}while(*S);不能因為當*s=’、0。時,while(* s)跳出循環(huán),這樣字符串結(jié)束標志’、0’沒有復制給}t,造成}t不完整。注意,*t++=*s++是先執(zhí)行t=*s,然后才進行t=t+1,s=s+1。B、C、D都能將。\0’復制過去
(11)D
【解析】字符串是一個特殊的數(shù)組,所以按照數(shù)組的規(guī)則,sl應該指向的是數(shù)組的首地址,即“abc”的第一個字符的地址。s2指向的是“123”的第一個字符的地址。調(diào)用swap函數(shù)之后交換的是兩個字符串的第一個字符‘a’和‘1’的內(nèi)容,所以打印輸出為D)。
(12)C
【解析】本題中由循環(huán)條件可知遇到‘\0’或x與y所指的字符的值不等中的一個條件時就結(jié)束,所以功能是統(tǒng)計x和Y所指字符串中最前面連續(xù)相同的字符個數(shù)。
(13)D
【解析】本題目中靜態(tài)局部變量x,在靜態(tài)存儲區(qū)內(nèi)分配存儲單元。在程序整個運行期間都不釋放。所以第一次循環(huán)s的值為2,第二次循環(huán)中,返回的x的值為4,所以s的值為8,第三次循環(huán),返回的x的值為8,所以S的值為64.
(14)A
【解析】全局變量的作用域是從聲明處到文件的結(jié)束。所以選擇A)。
(15)A
【解析】關(guān)鍵字typedef的作用只是將C語言中的已有的數(shù)據(jù)類型作了置換,并不是增加新的類型,所以A錯誤。
(16)D
【解析】聲明data是結(jié)構(gòu)S數(shù)組。初始化data『0].a=10;data[0].b=100;data[1].a=20;data[1].b=200。主函數(shù)中P=data[1];即P.a=data[1].a;P.b=data[1].b;執(zhí)行語句prinff(”%d\n”,++(P.a));打印輸出時p.a先增l再打印。P.a=data[1].a=20,先增1等于21。
(17)C
【解析】宏定義不是C語句,末尾不需要有分號。所以語句printf(”%4.1f\n”,S(8+b));展開后為parintf(”%4.1f\n”,3.5;*a+b}a+b;);所以程序會出現(xiàn)語法錯誤。
(18)B
【解析】&按位與,如果兩個相應的二進制位都為l,則該位的結(jié)果值為1,否則為0。l按位或,兩個相應的二1進制位中只要有一個為l,該位的結(jié)果值為l。2的二進制為1 00000010,4的二進制為00000100,所以做或運算結(jié)果為1 00000110,該數(shù)與5即00000101做與操作結(jié)果為00000100,1即4。
(19)D
【解析】maUoc函數(shù)動態(tài)分配一個整型的內(nèi)存空間,然后把函數(shù)返回的地址用(int{)強制類型轉(zhuǎn)換為整型指針,再把它賦給a,b,c,即讓指針變量a,b,c都指向剛申請的內(nèi)存空間。所以只有最后一個賦值語句+C=3的值保留在了該空間內(nèi),因為a、b、C三個指針變量均指向該空間,所以打印該空間內(nèi)的數(shù)值為3。
(20)A
【解析】B選項中打開一個已存在的文件并進行了寫操作后,原有文件中的全部數(shù)據(jù)不一定被覆蓋,也可以對源文件進行追加操作等。C選項中在一個程序中當對文件進行了寫操作后,不用先關(guān)閉該文件然后再打開,才能讀到第l個數(shù)據(jù),可以用fseek()函數(shù)進行重新定位即可。D選項中,C語言中的文件可以進行隨機讀寫。
【計算機二級C語言考前模擬試題及答案】相關(guān)文章:
C語言考前模擬試題09-11
計算機二級C語言模擬試題及答案07-04
C語言模擬試題及答案06-17
C語言模擬試題及答案09-19
C語言考前練習試題及答案09-16
2017計算機二級C語言考前測試題與答案08-29
計算機二級C++模擬試題及答案09-22
2024年計算機二級C語言模擬試題及答案10-29