當前位置:才華齋>IT認證>計算機等級>

2016年9月計算機二級c語言題庫

計算機等級 閱讀(1.69W)

2016年計算機等級考試複習已拉來大幕,同學們有開始複習了嗎?複習的最好方式是多做練習,下面yjbys為大家分享最新的計算機二級C語言題庫,僅供參考!

2016年9月計算機二級c語言題庫

  一、選擇題((1)~(10)每小題2分,(11)~(50)每小題1分,共60分)

下列各題A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確的選項塗寫在答題卡相應位置上,答在試卷上不得分。

(1)與十進位制數200等值的十六進位制數為

A) A8 B)A4 C)C8 D)C4

(2)DOS檔案系統的組織結構屬於

A)星形結構 B)網形結構 C) 環形結構 D)樹形結構

(3)對儲存器按位元組進行編址,若某儲存器晶片共有10根地址線,則該儲存器晶片的儲存容量為

A)1KB B)2KB C)4KB D)8KB

(4)在DOS環境下,代表鍵盤和顯示器的裝置檔名為

A)PRN B)CON C)NUL D)LPT

(5)計算機網路的主要特點是

A) 運算速度快 B)運算精度高 C)資源共享 D)人機互動

(6)磁碟處於防寫狀態時其中的資料

A)不能讀出,不能刪改 B)可以讀出,不能刪改

C)不能讀出,可以刪改 D)可以讀出,可以刪改

(7)從Windows環境進入MS-DOS方式後,返回Windows環境的DOS命令為

A)EXIT B)QUIT C)RET D)MSDO

(8)在Windows環境下,若資源管理器左宣傳品中的某資料夾左邊標有“+”標記,則表示

A)該資料夾為空 B)該資料夾中含有子資料夾

C)該資料夾中只包含有可執行檔案 D)該資料夾中包含系統檔案

(9)在Windows選單中,暗淡的命令名專案表示該命令

A)暫時不能用 B)正在執行

C)包含下一層選單 D)包含對話方塊

(10)在Windows環境下,單擊當前視窗中的按鈕“× ”(右上角的關閉按鈕),其功能是

A)將當前應用程式轉為後臺執行 B)退出Windows後再關機

C)終止當前應用程式的執行 D)退出Windows後重新啟動計算機

(11)用C語言編寫的程式碼程式

A)可立即執行 B)是一個源程式

C)經過編譯即可執行 D)經過編譯解釋才能執行

(12)結構化程式由三種基本結構組成,三種基本結構組成的演算法

A)可以完成任何複雜的任務 B)只能完成部分複雜的任務

C)只能完成符合結構化的任務 D)只能完成一些簡單的任務

(13)以下定義語句中正確的是

A)char a='A'b='B'; B)float a=b=10.0;

C)int a=10,*b=&a; D)float *a,b=&a;

(14)下列選項中,不能用作識別符號的是

A)_1234_ B)_1_2 C)int_2_ D)2_int_

(15)有以下定義語句

double a,b; int w; long c;

若各變數已正確賦值,則下列選項中正確的表示式是

A)a=a+b=b++ B)w%(int)a+b)

C)(c+w)%(int)a D)w=a==b;

(16)有以下程式

main()

{ int m=3,n=4,x;

x=-m++;

x=x+8/++n;

printf("%dn",x);

}

程式執行後的輸出結果是

A)3 B)5 C)-1 D)-2

(17)有以下程式

main()

{ char a='a',b;

print("%c,",++a);

printf("%cn",b=a++);

}

程式執行後的輸出結果是

A)b,b B)b,c C)a,b D)a,c

(18)有以下程式

main()

{ int m=0256,n=256;

printf("%o %on",mn,n);

}

程式執行後的輸出結果是

A)0256 0400 B)0256 256 C)256 400 D)400 400

(19)有以下程式

main()

{ int a=666,b=888;

printf("%dn",a,b);

}

程式執行後的輸出結果是

A)錯誤資訊 B)666 C)888 D)666,888

(20)有以下程式

main()

{ int i;

for(i=0;i<3;i++)

switch(i)

{

case 0:printf("%d",i);

case 2:printf("%d",i);

default:printf("%d",i);

}

}

程式執行後的輸出結果是

A)022111 B)021021 C)000122 D)012

(21)若x和y代表整型數,以下表達式中不能正確表示數學關係|x-y|<10的是

A)abs(x-y)<10 B)x-y>-10&& x-y<10

C)@(x-y)<-10||!(y-x)>10 D)(x-y)*(x-y)<100

(22)有以下程式

main()

{

int a=3,b=4,c=5,d=2;

if(a>b)

if(b>c)

printf("%d",d++ +1);

else

printf("%d",++d +1);

printf("%dn",d);

}

程式執行後的輸出結果是

A)2 B)3 C)43 D)44

(23)下列條件語句中,功能與其他語句不同的是

A) if(a) printf("%dn",x); else printf("%dn",y);

B) if(a==0) printf("%dn",y); else printf("%dn",x);

C) if (a!=0) printf("%dn",x); else printf("%dn",y);

D) if(a==0) printf("%dn",x); else printf("%dn",y);

(24)有以下程式

main()

{ int i=0,x=0;

for (;;)

{

if(i==3||i==5) continue;

if (i==6) break;

i++;

s+=i;

};

printf("%dn",s);

}

程式執行後的輸出結果是

A)10 B)13 C)21 D)程式進入死迴圈

(25)若變數已正確定義,要求程式段完成求5!的計算,不能完成此操作的程式段是B

A)for(i=1,p=1;i<=5;i++) p*=i;

B)for(i=1;i<=5;i++){ p=1; p*=i;}

C)i=1;p=1;while(i<=5){p*=i; i++;}

D)i=1;p=1;do{p*=i; i++; }while(i<=5);

(26)有以下程式

main()

{ char a,b,c,d;

scanf("%c,%c,%d,%d",&a,&b,&c,&d);

printf("c,%c,%c,%cn",a,b,c,d);

}

若執行時從鍵盤上輸入:6,5,65,66。則輸出結果是

A)6,5,A,B B)6,5,65,66 C)6,5,6,5 D)6,5,6,6

(27)以下能正確定義二維陣列的是

A)int a[][3]; B)int a[][3]=2{2*3};

C)int a[][3]={}; D)int a[2][3]={{1},{2},{3,4}};

(28)有以下程式

int f(int a)

{ return a%2; }

main()

{ int s[8]={1,3,5,2,4,6},i,d=0;

for (i=0;f(s);i++) d+=s;

printf("%dn",d);

}

程式執行後的輸出結果是

A)9 B)11 C)19 D)21

(29)若有以下說明和語句,int c[4][5],(*p)[5];p=c;能正確引用c陣列元素的是

A)p+1 B)*(p+3)

C)*(p+1)+3 D)*(p[0]+2))

(30)有以下程式

main()

{ int a=7,b=8,*p,*q,*r;

p=&a;q=&b;

r=p; p=q;q=r;

printf("%d,%d,%d,%dn",*p,"q,a,b);

}

程式執行後的輸出結果是

A)8,7,8,7 B)7,8,7,8 C)8,7,7,8 D)7,8,8,7

(31)s12和s2已正確定義並分別指向兩個字串。若要求:當s1所指串大於s2所指串時,執行語 句S;則以下選項中正確的是

A)if(s1>s2)S; B)if(strcmp(s1,s2))S;

C)if(strcmp(s2,s1)>0)S; D)if(strcmp(s1,s2)>0)S;

(32)設有定義語句

int x[6]={2,4,6,8,5,7},*p=x,i;

要求依次輸出x陣列6個元素中的值,不能完成此操作的語句是

A)for(i=0;i<6;i++) printf("%2d",*(p++));

B)for(i=0;i<6;i++) printf("%2d",*(p+i));

C)for(i=0;i<6;i++) printf("%2d",*p++);

D)for(i=0;i<6;i++) printf("%2d",(*p)++);

(33)有以下程式

#include

main()

{int a[]={1,2,3,4,5,6,7,8,9,10,11,12,},*p=a+5,*q=NULL;

*q=*(p+5);

printf("%d %dn",*p,*1);

}

程式執行後的輸出結果是

A)執行後報錯 B)6 6 C)6 11 D)5 10

(34)有以下定義和語句

int a[3][2]={1,2,3,4,5,6,},*p[3];

p[0]=a[1];

則*p[0]+1)所代表的陣列元素是

A)a[0][1] B)a[1][0] C)a[1][1] D)a[1][2]

(35)有以下程式

main()

{char str[][10]={"China","Beijing"},*p=str;

printf("%sn",p+10);

}

程式執行後的輸出結果是

A) China B)Bejing C)ng D)ing

(36)有以下程式

main()

{char s[]="ABCD",*p;

for(p=s+1;p

}

程式執行後的輸出結果是

A) ABCD B)A C)B D)BCD

BCD B C CD

CD C D D

D D

(37)在函式呼叫過程中,如果函式funA呼叫了函式 funB,函式funB又呼叫了函式funA,則

A)稱為函式的直接遞迴呼叫 B)稱為函式的間接遞迴呼叫

C)稱為函式的迴圈呼叫 D)C語言中不允許這樣的遞迴呼叫

(38)已有定義:int i,a[10],*p;,則合法的賦值語句是

A)p=100; B)p=a[5]; C)p=a[2]+2; D)p=a+2;

(39)以下敘述中正確的是

A)區域性變數說明為static儲存數,其生存期將得到延長

B)全域性變數說明為static儲存類,其作用域將被擴大

C)任何儲存類的變數在未賦初值時,其值都是不確定的

D)形參可以使用的儲存類說明符與區域性變數完全相同

(40)設有定義語句:char c1=92,c2=92;,則以下表達式中值為零的是

A)c1^c2 B)c1&c2 C)~c2 D)c1|c2

(41)程式中對fun函式有如下說明

void *fun();

此說明的含義是:

A)fun了數無返回值

B)fun函式的返回值可以是任意的資料型別

C)fun函式的返回值是無值型的'指標型別

D)指標fun指向一個函式,該函式無返回值

(42)有以下程式

main()

{ char s[]"Yesn/No",*ps=s;

puts(ps+4);

*(ps+4)=0;

puts(s);

}

程式執行後的輸出結果是

A)n/No B)/No C)n/NO D)

Yes Yes Yes /No