計算機二級c語言題庫2016精選

來源:文萃谷 1.98W

1.以下所列的C語言常量中,錯誤的是( )。

計算機二級c語言題庫2016精選

A.0xFF

B.1.2e0.5

C.2L

D.‘72’

2.若變量a、i已正確定義,且i已正確賦值,合法的語句是( )。

A.a==l

B.++i

C.a=a++=5

D.a=int(i)

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

A.一3

B.9

C.一12

D.6

4.若有定義“int a=5,b=7;”,則表達式a%一(b%2) 運算後,a的值為( )。

A.0

B.1

C.11

D.3

5.若執行以下程序時從鍵盤上輸入9,則輸出結果是( )。

main()

{ int n;

scanf(”%d”,&n);

if(n++<10)printf(”/%dn”,n);

else printf(”%dn”,n--);

}

A.11

B.10

C.9

D.8

6.設a、b、c、d、m、n均為int型變量,且a=5、b=6、c= 7、d=8、m=2、n=2,則邏輯表達式(m=a>b)&&(n—c> d)運算後,n的值是( )n

A.0

B.1

C.2

D.3

7.有如下程序:

main()

{ int x=23;

do

{printf(”%d”,x--);}

while(!x);

}

該程序的執行結果是( )。

A.321

B.23

C.不輸出任何內容

D.陷入死循環

8.下列程序的輸出結果是( )。

#include

main()

{ int a=2,b=3,P;

p=f(a,b);

printf(”%d”,p);

}

int f(a,b)

{ int c;

if(a>b)c=1;

else if(a==b)c=0;

else c=-l;

return(c);

}

A.-l

B.0

C.1

D.2

9.有下列程序:

fun(int x,int y)

{ static int m=0,i=2;

i+=m+1;m=i+x+y;return m;

}

main()

{ int j=1,m=1,k;

k=fun(j,m);print S(”%d,”,k);

k=fun(j,m);printf(”%dn”,k);

)

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

A.5,5

B.5,11

C.11,11

D.11,5

10.下列字符數組初始化語句中,不正確的是( )。

c[]=’900dmornin9’;

c[20]="900dmorning";

c[]={’a’,’b ’,’c ’,’d’);

c[]={"ffgoodmorning"};

11.下列程序的輸出結果是( )。

#include

void p(int*x)

{ printf("%d¨,++*x);

}

void main()

{ int y=3;

p(&y);

}

A.3

B.4

C.2

D.5

12.若變量e為char類型,能正確判斷出C為小寫字母的表達式是( )。

A.’a’<=c<=’2’

B.(c>=’a’)||(c<=’2’)

C.(’a’<=c)and(’z’>c)

D.(c>=’a’)&&(c<=’2’)

13.以下程序的輸出結果是( )。

main()

{ int Rum=0;

while(num<=2)

{ num++;

printf(”%dn”,num);

}

}

A.1

B.1

C.1

1

2

3

D.1

1 2

2

14.以下函數返回a所指數組中最小的值所在的下標值:

fun(int*a,int n)

{ int i,j=0,P;

p=j;

for(i=j;i   if(a[i]  }

在下劃線處應填入的是( )。

A.i=P

B.a[p]=a[i]

C.p=j

D.p=i

15.有如下程序段:

int a=14,b=15,x;

char c=’A’;

x=(a&&b)&&(c<’B’):

執行該程序後,x的值為( )。

e

C.0

D.1

16.以下程序的輸出結果是( )。

main()

{ int i,a[4] [4]一{{1,3,5),{2,4,6},{3,5,7}};

printf("%(1%d%d%dn".a[O][3],a[1][2],a[2]

[1],a[3][0];

}

A.0650

B.1470

C.5430

D.輸出值不定

17.下列程序中函數sort()的.功能是對數組a中的數據進行由大到小的排序。

#include

void sort(int a[],int ll)

{ int i,j,t;

for(i=0;i   for(j=j+1+1;j   if(a[i]   {t=a[i];a[i]=a[j];a[j]=t;

}

}

main()

{ int a[10]一{1,2,3,4,5,6,7,8,9,10},i;

sort(&a[1],7);

for(i=0;i<10;i++)printf("%d,",a[i]);

}

程序運行後的輸出結果是( )。

A.1,2,3,4,5,6,7,8,9,10,

B.10,9,8,7,6,5,4,3,2,1,

C.1,8,7,6,5,4,3,2,9,10,

D.1,2,10,9,8,7,6,5,4,3,

18.下列判斷正確的是( )。

a="ABCD":等價於char*a;*a="ABCD":

str[10]={"ABCD"}:等價於char str[10];str []={"ABCD"};

*s="ABCD":等價於char s;*s="ABCD";

c[5]="ABCD",d[5]="ABCD":等價於char c [5]-d[5]="ABCD";

19.有如下程序:

main()

{ int n[5]={0,0,0},i,k=2;

for(i=0;i&printf("%dn",n[k]););

}

該程序的輸出結果是( )。

A.不確定的值

B.2

C.1

D.0

20.當執行下面的程序時,如果輸入ABC,則輸出結罘是( )。

#include

#include

main()

{ char ss[10]="1,2,3,4,5":

gets(ss);strcat(ss,"6789");printf("%sn",ss);

}

6789

67

C.12345ABC6

456789

21.以下程序的輸出結果是( )。

#define M(x,y,z)x*y+z

main()

{ int a=l,b=2,c=3;

printf("%dn",m(a+b.b+c,c+a));

}

A.19

B.1 7

C.15

D.12

22.有以下程序:

main()

{ int k=5,n=0;

do

{ switch(k)

{ case 1:

case 3:n+=l;k--;break;

defalut:n=0;k--;

case 2:

case 4:n+=2;k--;break:

}

printf("%d",n);

}while(k>0&&n<5);

}

程序運行後的輸出結果是( )。

A.235

B.0235

C.02356

D.2356

23.下面for語句的循環次數為( )。

for(x=1,y=0;(y!=19)&&(x<6);x++);

A.是無限循環

B.循環次數小定

C.最多執行6次

D.最多執行5次

24.對下述程序的判斷中,正確的是( )。

#include

main()

{ char*p,s[256];

p=s ;

while(strcmp(s,"the end"))

{ printf("Input the strin9:");

gets(s);

while(*p)

putchar(*p++);

}}

A.此程序循環接收字符串並輸出,直到接收到字符串“the end”為止

B.此程序循環接收字符串,接收到字符串“the end”則輸出,否則程序終止

C.此程序循環接收字符串並輸出,直到接收字符串“the end”為止,但因為代碼有錯誤,程序不能正常工作

D.此程序循環接收字符串並將其連接在一起,直到接收字符串“the end”為止,輸出連接在一起的字符串

25.下列程序的輸出結果是( )。

#include

main()

{ int i,S=0;

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

if(!(i%2)&&!(i%3))s+=i;

printf("%dn",s);

}

A.4

B.39

C.45

D.6

26.有以下程序:

void fun2(char a,char b) {printf(”%c%c”,a,b); }

char a=’A’,b=’B’;

void funl(){a=’C’;b=’D’;}

main()

{ funl();

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

fun2(’E’,’F’);

}

程序的運行結果是( )。

27.有以下程序:

#include

main()

{ char cl=’1’,c2=’2’;

cl=getchar();c2=getchar();putchar(c1);putcha:

(c2);

}

當程序運行時輸入a<回車>後,下列敍述中正確的是( )。

A.變量c1被賦予字符a,c2被賦予回車符

B.程序將等待用户輸入第2個字符

c.變量c1被賦予字符a,c2中仍是原有字符2

D.變量c1被賦予字符a,c2中將無確定值

28.下述程序的輸出結果是( )。

#define N 20

void fun(int a[],int n,int m)

{ int i,j;

for(i=m;i>n;i--)a[i+1]=a[i];

}

main()

{ int i,a[N]={1,2,3,4,5,6,7,8,9,10};

fun(a,2,9);

for(i=0;i<5;i++)printf("%d",a[i]);

}

A.10234

B.12344

C.12334

D.12234

29.若要用函數fopen打開一個新的二進制文件,該文件要既能讀也能寫,則應以( )方式打開文件。

A."wb"

B."wb+"

C."rb+"

D."rb"

30.下列敍述中錯誤的是( )。

A.在C語言中,函數中的自動變量可以賦初值,每調用一次賦一次初值

B.在C語言中,在調用函數時,實參和對應形參在類型上只需賦值兼容

C.在C語言中,外部變量的隱含類型是自動存儲類別

D.在C語言中,函數形參的存儲類型是自動(auto)類型的變量

熱門標籤