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

2016計算機二級c語言題庫(附答案)

計算機等級 閱讀(6.09K)

1.執行下面的程式段

2016計算機二級c語言題庫(附答案)

int x=40;

char z=′B′;

int B;

B=((x&0xff)&&(z>′a′));

後,B的值為()

A)0 B)1 C)2 D)3

2.已知下列函式定義

setw(int *b,int m,int n,int dat)

{ int k;

for(k=0;k  {*b=dat;b++;}

}

則呼叫此函式的正確寫法是(假設變數a的說明為int a[50])()

A)setw(*a,5,8,1); B)setw(&a,5,8,1); C)setw((int*)a,5,8,1); D)setw(a,5,8,1);

3.若有以下定義和語句:

double r=99, *p=7;

*p=r;

則以下正確的敘述是()

A)兩處的*p含義相同,都說明給指標變數p賦值3

B)在“double r=99, *p=7; *p=r;”中,把r的地址賦給了p所指的儲存單元

C)語句“*p=r;”把變數r的值賦給指標變數p

D)語句“*p=r;”把變數r的值放回p中

4.設有char str[10],下列語句正確的是()

A)scanf("%s",&str); B)printf("%c",str); C)printf("%s",str[0]); D)printf("%s",str);

5.下列描述說明正確的是()

A)定義結構體時,它的每個成員的資料型別可以不同

B)不同結構體的成員名不能相同

C)結構體定義時,其成員的資料型別不能是結構體本身

D)結構體定義時各成員項之間可用分號也可用逗號隔開

6.以下函式的功能是()

intfun(char *a)

{ char*b=a;

while(*b)b++;

{return b-a; }

}

A)比較兩個字串的大小 B)字串的複製 C)計算字串的長度 D)字串的連線

7.若有如下程式:

#define X3

#define YX+1

#define ZY*Y/2

main()

{ intn;

for(n=1;n<=Z;n++)printf("%d",n);}

則程式執行後的輸出結果是()

A)12345 B)1234567 C)12345678 D)123456

8.以下敘述中錯誤的是()

A)區域性變數的'定義可以在函式體和複合語句的內部

B)全域性變數的定義可以在函式以外的任何部位

C)同一程式內區域性變數和全域性變數不允許同名

D)函式的形參屬於區域性變數

9.以下敘述中錯誤的是()

A)二進位制檔案開啟後可以先讀檔案的末尾,而順序檔案不可以

B)在程式結束時,應當用fclose函式關閉已開啟的檔案

C)在利用fread函式從二進位制檔案中讀資料時,可以用陣列名給陣列中所有元素讀入資料

D)不可以用FILE定義指向二進位制檔案的檔案指標

10.若fp是指向某檔案的指標,且已讀到此檔案末尾,則庫函式feof(fp)的返回值是()

A)EOF B)0 C)非零值 D)NULL

答案:1.A 2.D 3.D 4.D 5.A 6.C 7.D 8.C 9.D 10.C