计算机二级c语言题库2016精选
1.以下所列的C语言常量中,错误的是( )。
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(”/%d\n”,n);
else printf(”%d\n”,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(”%d\n”,k);
)
执行后的输出结果是( )。
A.5,5
B.5,11
C.11,11
D.11,5
10.下列字符数组初始化语句中,不正确的是( )。
A.char c[]=’900dmornin9’;
B.char c[20]="900dmorning";
C.char c[]={’a’,’b ’,’c ’,’d’);
D.char 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(”%d\n”,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
执行该程序后,x的值为( )。
A.true
B.false
C.0
D.1
16.以下程序的输出结果是( )。
main()
{ int i,a[4] [4]一{{1,3,5),{2,4,6},{3,5,7}};
printf("%(1%d%d%d\n".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.char a="ABCD":等价于char*a;*a="ABCD":
B.char str[10]={"ABCD"}:等价于char str[10];str []={"ABCD"};
C.char*s="ABCD":等价于char s;*s="ABCD";
D.char 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("%d\n",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("%s\n",ss);
}
A.ABC6789
B.ABC67
C.12345ABC6
D.ABC456789
21.以下程序的输出结果是( )。
#define M(x,y,z)x*y+z
main()
{ int a=l,b=2,c=3;
printf("%d\n",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("%d\n",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’);
}
程序的运行结果是( )。
A.CDEF
B.ABEF
C.ABCD
D.CDAB
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)类型的变量
【计算机二级c语言题库2016精选】相关文章: