當前位置:學者齋 >

計算機 >計算機二級 >

2015下半年全國計算機二級C語言考前模擬試題及答案(六)

2015下半年全國計算機二級C語言考前模擬試題及答案(六)

一、選擇題

2015下半年全國計算機二級C語言考前模擬試題及答案(六)

1.已知函數的調用形式:fread(buffer,size,count,fp);其中buffer代表的是(B)。

A、一個存儲區,存放要讀的數據項

B、一個指針,指向要讀入數據的存放地址

C、一個文件指針,指向要讀的文件

D、一個整數,代表要讀入的數據項總數

2.結構體類型的定義允許嵌套是指(A)。

A、成員是已經或正在定義的結構體型

B、定義多個結構體型

C、成員可以重名

D、結構體型可以派生

3.對結構體類型的變量的成員的訪問,無論數據類型如何都可使用

的運算符是(B)。

A、&

B、.

C、*

D、->

4.若有以下的定義:int t[3][2];能正確表示t數組元素地址的表達式是(D)。

A、&t[1]

B、t[3]

C、&t[3][2]

D、t[2]

5.若有説明:int *p,m=5,n;以下正確的程序段是(D)。

A、scanf("%d",&n);*p=n;

B、p=&n;scanf("%d",*p)

C、p=&n;scanf("%d",&p);

D、p=&n;*p=m;

6.若定義:int a=511,*b=&a;, 則printf("%dn",*b);的輸出結果為(D)。

A、無確定值

B、a的地址

C、512

D、511

7.下列説法中正確的是(B ).

A、函數調用不佔運行時間,只佔編譯時間.

B、宏替換不佔運行時間,只佔編譯時間.

C、有參數的宏定義,就是函數.

D、在定義宏時,宏名與帶參數的括弧之間可以加空格.

C語言程序中,若對函數類型未加聲明,則函數的類型系統默認為(C)。

A、void

B、double

C、int

D、char

8.若已定義的函數有返回值,則以下關於該函數調用的敍述中錯誤的是(A)。

A、函數調用可以作為一個函數的形參

B、函數調用可以作為一個函數的實參

C、函數調用可以作為獨立的語句存在

D、函數調用可以出現在表達式中

9.對於void類型函數,調用時不可作為(B)。

A、循環體裏的語句

B、表達式

C、if語句的成分語句

D、自定義函數體中的語句

10.C語言規定,函數返回值的類型是由(A)。

A、在定義該函數時所指定的函數類型所決定

B、return語句中的表達式類型所決定

C、調用該函數時系統臨時決定

D、調用該函數時的主調函數類型所決定

11.以下定義語句中,錯誤的是(A)。

A、int n=5,a[n];

B、int a[]={1,2};

C、char s[10]="test";

D、char *a[3];

12.以下不能對二維數組a進行正確初始化的語句是(A)。

A、int a[2][3]={{1,2},{3,4},{5,6}};

B、int a[][3]={{1,2},{0}};

C、int a[2][3]={0};

D、int a[][3]={1,2,3,4,5,6};

13.在C語言中,引用數組元素時,其數組下標的數據類型允許是(B)。

A、整型常量

B、整型常量或整型表達式

C、整型表達式

D、任何類型的表達式

a[10];合法的數組元素的最小下標值為(D)。

A、10

B、9

C、1

D、0

15.下列數組説明中,正確的是(B)。

A、int array[][];

B、int array[][4];

C、int array[3][];

D、int array[][][5];

16.以下正確的描述是(A ).

A、只能用continue語句來終止本次循環

B、switch語句中不能出現continue語句

C、在循環中break語句不能獨立出現

D、goto語句只能用於退出多層循環

17.針對for循環語句,for(表達式1;表達式2;表達式3),下列説法正確的是(B ).

A、break語句可以一次性跳出多層嵌套循環

B、break語句只能跳出最內層循環

C、continue語句可以一次性跳出多層嵌套循環

D、continue語句不能跳出最外層循環

18.下面程序正確的運行結果是(B ).(答案中用大寫字母U代表空格)

main()

{

int num=0;

while(num<=2)

{

num++;

printf("=",num);

}

}

A、UU1

B、UU1UU2UU3

C、UU1UU2UU3UU4

D、UU1UU2

19.以下程序的執行結果是(B )。

main()

{ int num = 0;

while( num <= 2 ) { num++; printf( "%d,",num ); } }

A、0,1,2

B、1,2,3,

C、1,2,3,4,

D、1,2,

20.C語言中,switch後的括號內表達式的值可以是( C)。

A、只能為整型和字符型

B、只能為整型

C、任何類型

D、只能為整型,字符型,枚舉型

21.下列運算符中,不屬於關係運算符的是(C)。

A、>=

B、>

C、!

D、<

22.下面説法不正確的是:(C )。

A、a為真b為假,則a&&b為假

B、a為真b為假,!a&&b為假

C、a為真b為假,則a||b為假

D、a為真,!a-1為真

23.以下運算符中,優先級最高的運算符是(D)。

A、==

B、||

C、%

D、!

24.已知鍵盤輸入a=4,b=3,下面程序輸出的結果是( C).

main()

{ int a,b,s;

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

s=a;

if(a   s=s*s;

printf("%dn",s);

}

A、9

B、13

C、16

D、15

25.為表示關係x>=y>=z,應使用C語言表達式為:( A)

A、(x>=y)&&(y>=z)

B、(x>=y)&(y>=z)

C、(x>=y)AND(y>=z)

D、(x>=y>=z)

26.已定義float a; int i;選擇正確的輸入語句(C ).

A、scanf("%6.2f=", &a,&i);

B、scanf("%f%s", &a,&i);

C、scanf("o=",&a,&i);

D、scanf("%f%d", a,i);

27.根據下面的程序,正確的輸出形式是(A );

main()

{

int i=5,j=10;

printf ("i=%d,", i);

printf ("j=%d ", j);

}

A、i=5, j=10

B、10,5

C、5,10

D、i=5Uj=10

28.若有以下程序:

main()

{

int k=2,i=2,m;

m=(k+=i*=k);

printf("%d,%dn",m,i);

}

29執行後的輸出結果是(D )。

A、8,3

B、7,4

C、8,6

D、6,4

30下列字符序列中,不可用作C語言標識符的是(C)。

A、b70

B、a_1

C、#ab

D、symbol

  • 文章版權屬於文章作者所有,轉載請註明 https://xuezhezhai.com/zh-hk/jsj/erji/ezx4gk.html