计算机二级考试C语言选择题(2)

Python011

计算机二级考试C语言选择题(2),第1张

{ char x=0xFFFFprintf("%d\n",x--)}

A.-32767

B.FFFE

C.1

D.32768

22.下面的函数调用语句中func函数的实参个数是( )。

func((f2v1,v2),(v3,v4,v5),(v6,max(v7,v8)))

A.3

B.4

C.5

D.8

23.语句“printf("akbre"\’hi\’y\\\bou\n")”的输出结果是( )。

A.akbre\’hi\’y ’\\\bou

B.a\bre\’hi\\y\bou

C.re ’hi’you

D.abre’hi’y\bou

24.下面程序输出的是( )。

main()

{ int t=lfun(fun(t))}

fun(int h)

{ static int a[3]={1.2.3}

int k

for(k=0k<3k++)a[k]+=a[k]-h

for(k=0k<3k++)printf("%d",a[k])

printf("\n")

return(a[h])}

A.1,2,3,

1,5,9,

B.1,3,5,

1,3,j,

C.1,3,5,

0,4,8,

D.1,3。5,

-1,3,7,

25.以下叙述中正确的是( )。

A.预处理命令行必须位于C源程序的起始位置

B.在C语言中,预处理命令行都以“#”开头

c.每个C程序必须在开头包含预处理命令行:#include

D.C语言的预处理不能实现宏定义和条件编译的功能

26.为了避免在嵌套的条件语句if else中产生二义性,C语言规定,else子句总是与( )配对。

A.缩排位置相同if

B.其前面最近的if

C.其后面最近的if

D.同一行上的if

27.设有下列程序段:

char str[]="HelloWorld":

char* plr

ptr=str:

执行上面的程序段后,*(ptr+10)的'值为( )。

A.’\0 ’

B.’0’

C.不确定的值

D.’0’的地址

28.有以下程序:

void swap(char*x,char*y)

{ char t

t=*x*x=*y*y=t

}

main()

{ char*s1="abe",*s2="123":

swap(s1,s2)

printf("%s,%s\n",s1,s2)

}

程序执行后的输出结果是( )。

A.123,abe

B.abc.123

C.1bc,a23

D.321,cba

29.下列程序的运行结果是( )。

#include

main()

{ static char a[]="Languagef",b[]="programe":

char*p1,*p2int k

p1=ap2=b

for(k=0k<=8k++)

if(*(p1+k)==*(p2+k))

printf("%c",*(p1+k)):

}

A.gae

B.ang

C.program

D.有语法错

30.下列程序的运行结果为( )。

#define MAX(x,y)(x)>(y)?(x):(y)

main()

{ int a=2,b=3,C=1,d=3,t:

printf("%d\n",(MAX(a+h,c+d))*100):

}

A.500

B.5

C.4

D.400

31.设int x=7,则~x的值是()。

A.-8

B.7

C.-1

D.1

32.有以下程序:

void fun(char*a,char*b)

{a=b(*a)++}

main()

{char c1=’A ’,c2=’a’,*p1,*p2

p1=&c1p2=*c2fun(p1,p2)

printf("%C%c\n",c1,c2)

}

程序运行后的输出结果是()。

A.Ab

B.aa

C.Aa

D.Bb

33.有以下程序:

int fun(int n)

{if(n==l)return l

else return(n+fun(n一1)):

}

main()

{int x

scanf("%d",&x)x=fun(x)printf("%d\n",

x):

}

执行程序时,给变量X输入10,程序的输出结果是()。

A.55

B.54

C.65

D.45

34.有以下程序:

void f(int x,int y)

{int t

if(x}

main()

{int a=4,b=3,c=5

f(a,b)f(a,c)f(b,c)

printf("%d,%d,%d\n",a,b,c)

}

执行后输出结果是()。

A.3,4,5

B.5,3,4

C.5,4,3

D.4,3,5

35.以下程序的输出结果是()。

main()

{char*s="12134211"

int v[4]=(0,0,0,0),k,i

for(k=0s[k]k++)

{switch(s[k])

{case’1’:i=0

case’2’:i=1

case’3’:i=2

全国计算机二级C语言程序设计包括40个单选题(每题一分)和三道操作题(60分)。

单选题中1~10题为二级公共基础知识,单选题的11~40题是C语言的内容。

操作题包括程序填空(18分)、程序改错(18分)和编程题(24分)各一题。

程序填空是将一个完整的程序,扣掉两到三处,让考生将它填写完整。由于每位考生具体抽到的题目不同,程序填空有2到3个空要填。

程序改错也是一个完整的程序,其中有2~3处错误要求考生将他们改正。

编程题是要求考生编写一个程序,然后运行出题干要求的结果。题目中主函数main()会完整给出,在主函数中将调用fun()函数,fun函数由考生自己编写。编程题以运行结果给分,所编写完成后必须运行,否则没分。

二级C语言程序设计考试涉及公共基础知识和C语言两块。公共基础知识内容包括数据结构与算法、程序设计基础、软件工程基础、数据库设计基础四部分。考10个单选每个1分。

C语言有基础知识(C语言概述、常量与变量、数据类型、运算符和表达式),编程三大结构(顺序结构、选择结构、循环结构),数组、函数和指针,其他内容(预处理命令、结构体和共用体、位运算、文件)四大部分内容。重点是第二、三部分。