當前位置:才華齋>計算機>計算機二級>

2017年計算機二級考試C語言模擬試題(三)

計算機二級 閲讀(2.58W)

點擊查看試題答案及解析
  一、選擇題

2017年計算機二級考試C語言模擬試題(三)

1.一個C語言程序是由( )構成。

A.語句

B.行號

C.數據

D.函數

2.下面標識符中正確的是( )。

A.d&ef

B.6a

C.z4x5c

D.a3/b4

3.在C語言中,存儲一個字符型、整型、單精度實型變量所需的空間是()。型、單精度實型變量所需的空間是()。

A.1、2、4

B.1、1、4

C.1、2、8

D.2、2、8

4.為了避免嵌套的條件分支語句 if--else中的else總是與( ) 組成成對關係。

A. 縮排位置相同的

B. 在其之前未配對的

C. 在其之前未配對的最近的if

D. 在同一行上的if

5.下列表達式的`結果正確的是( )。

int aa,bb,cc,dd;

aa=bb=cc=dd=1;sp; aa=bb=cc=dd=1;sp; aa=bb=cc=dd=1;

(aa+1==2)?bb=aa+2:aa+3

A.2

B.3

C. 1

D.5

6.設有int x=11 ;則表達式(x+1/3)的值是( )。

A.3

B. 4

C. 11

D.12

7.設有字符串A=“He has 錢!”,則該字符串的長度為( )。

A. 9

B. 10

C. 11

D. 8

8.有如下程序段,則正確的執行結果是( )

int m=3;

while(m<=5)

{ printf(“%d ”,m-3); m++;}

A. 0 0 0

B.0 1 2

C.1 2 3

D.無結果

9.執行語句:printf("%d",(a=2)&&(b= -2);後,輸出結果是( )。

A.無輸出

B.結果不確定  

C.-1

D. 1

10.有如下定義類型語句,若從鍵盤輸入數據,正確的輸入語句是( )。

int x; char y; char z[20];

A. scanf("%d%c%c",&x,&y,&z);

B. scanf("%d%c%s",&x,&y,&z);

C. scanf("%d%c%c",&x,&y,z);

D. scanf("%d%c%s",&x,&y,z);

11. struct ex

{ int x ; float y; char z ;} example;

則下面的敍述中不正確的是( )。

A. struct結構體類型的關鍵字

B. example是結構體類型名

C. x,y,z都是結構體成員名

D. struct ex是結構體類型

12.在C語言中對於實型數組,其每個數組元素的類型是( )。

A. 實型

B. 整型

C. 可以為任何類型

D. 不確定

13. 若已定義:int a[9],*p=a;不能表示a[1] 地址的表達式是( )。

A. p+1

B. a+1

C. a++

D. ++p

14. 在TC2.0環境中,對文件進行保存使用的命令是( )。

A. OPEN

B. SAVE

C. LOAD

D. WRITE TO

15.在C++的類中,用於表示公共類型的關鍵字是( )。

A. class

B. private

C. protect

D. public

  二、填空題

1.在C語言中,正確的標識符是由____________組成的,且由____________開頭的。

2. 設p=30,那麼執行q=(++p)後,表達式的結果q為______,變量p的結果為________。

若a為int類型,且其值為3,則執行完表達式a+=a-=a*a後,a的值是_________。

3. 一個變量的指針是指________________。

4. 在C語言程序中,對文件進行操作首先要_____________;然後對文件進行操作,最後要對文件實行____________操作,防止文件中信息的丟失。

5. 以下程序運行後的輸出結果是_________。該程序的功能是_________ 。

main()

{ int x=10,y=20 ,t=0;

if(x!=y) t=x; x=y; y=t;

printf("%d,%d ",x,y); }

6. 若fp已正確定義為一個文件指針,為二進制文件,請填空,以便為"讀"而打開此文件:fp=fopen( );。

7. 有以下程序,當輸入的數值為2,3,4時,輸出結果為_________。

main()

{ int x,y,z;

cout << “please input three number”;

cin >>x>>y>>z;

sum=x*x+y*2+z;

cout<<“sum of number is :”<}

8. 有以下程序

main()

{ char c;

while((c=get))!='?') put - - c ); }

程序運行時,如果從鍵盤輸入:YDG?N?<回車>,則輸出結果為_________ 。

9.在循環中,continue語句與break語句的區別是:continue語句是語句的區別是:continue語句是 _________ ,break 是 _________。

  三、程序填空與算法題

1. 下面程序是計算10個整數中奇數的和及其偶數的和,請填空。

#include

main()

{ int a,b,c,i;

a=c=0;

for(i=1;i<=10;i++)

{ scanf(“%d”,&b);canf(“%d”,&b);

_________

_________

_________ }

printf("偶數的和=%d ",a);

printf("奇數的和=%d ",c); }

2.編寫一個自定義函數,實現求兩個實數的平方和

3. 以下程序運行後的輸出結果是_________。

main()

{ char s[ ]="GFEDCBA";

int p=6;

while(s[p]!=‘D’)

{ printf("%c ", p);

p=p-1; } }

4.定義一個反映學生信息的結構體,包括學生的姓名,性別,年齡,成績等。

5.以下程序輸出的結果是 _________。

int ff(int n)

{ static int f=l;

f=f*n;

return f; }

main()

{ int i;

for(i=1;i<=5;i++) printf("%d ",ff(i)); }

6. 設有以下程序:

main()

{ int n1,n2;

scanf("%d",&n2);

while(n2!=0)

{ n1=n2;

n2=n2/10;

printf("%d ",n1); } }

程序運行後,如果從鍵盤上輸入1298;則輸出結果為_________。

7.下面程序的功能是:輸出 100以內(不包含100)能被 3整除且個位數為 6的所有整數,請填空。

#Include

main()

{ int i, j;

for(i=1; ____________; i++)

if (________________)

printf("%d", j); }

  四、編程題

1. 編程實現求解下面的式子的結果

s=1*2+2*3+3*4+…+20*21

2.編程實現求下面的式子的結果

3.編程實現將文本文件的內容讀出來,顯示到屏幕上。