文档介绍:2012计算机二级C真题
机密口启用前
2012年3月全国计算机等级考试二级笔试试卷
C语言程序设计
〔考试时间90分钟,共100分〕
选择题((1)一(10), (21〕一(40)每题2分,(11)一(20)每题I分,for(n=0;n<3;n++)
{ switch(s)
{ case 0:
case 1: s+=1;
case 2: s+=2; break;
case 3: s+=3;
default: s+=4;
}
Printf(“%d”,s);
}
}
程序运行后的输出结果是
A)1,2,4 B)1,3,6 C)3,10,14 D)3,6,10
22 若K是int类型变量,且有以下for语句
for(k=-1;k<0;k++) printf(“***\n”);
下面关于语句执行情况的叙述中正确的是
A循环体执行一次 B循环体执行两次 C循环体一次也不执行 D构成无限循环
23 有以下程序
#include””
main()
{ char a,b,c;
b=’1’; c=’A’;
for(a=0;a<6;a++)
{ if(a%2) putchar(b+a);
else putchar(c+a);
}
程序运行后的输出结果是
A)1B3D5F B) ABCDEF C)A2C4F6 D)123456
24 设有如下定义语句
int m[]={2,4,6,8,10},*k=m;
以下选项中,表达式的值是6的是
A)*(k+2) B) k+2 C)*k+2 D) *k+=2
25 fun函数的功能是:通过键盘输入给x所指的政协数组所有的元素赋值,在下划线处应填写的是
#include””
#define N 5
void fun(int x[n])
{ int m;
for(m=N-1;m>=0;m--) scanf(“%d”,_____);
}
A)&x[++m] B)&x[m+1] C)x+(m++)
D)x+m
26 若有函数
Void fun(double a[],int *n)
{……}
以下叙述中正确的是
A通用fun函数时只有数组执行按值传送,其他实参和形参之间执行接地址传送
B形参a和n都是指针变量
C形参a是一个数组名,n是指针变量
D调用fun函数时将把double型实参数组元素一一对应地传送给形参a数组
27 有以下程序
#include””
main()
{ int a,b,k,m,*p1,*p2;
k=1,m=8;
p1=&k,p2=&m;
a=/*p1-m; b=*p1+*p2+6;
printf(“%d”,a); printf(“%d\n”,b);
}
编译时编译器提示错误信息,你认为出错的语句是
A) a=/*p1-m; B) b=*p1+*p2+6; C) k=1,m=8; D) p1=&k,p2=&m;
28 以下选项中有语法错误的是
A)char *srt[]={“guest”}; B)char str[][10]={“guest”};
C)char *str[3];str[1]=”guest” D)char str[3][10];str[1]=”guest”
29 avg函数的功能是求整型数组中的前若干个元素的平均值,设数组元素个数最多不超过10,则下列函数说明语句错误的是
A) int avg(int *a,int n); B) int avg(int a[10],int n);
C) int avg(int a,int n); D) int avg(int a[],int n);
30 有以下程序
#include””
#include”string,h”
main()
{ printf(“%d\n”,strlen(“ATS\NQ12\n”));}
程序运行后的输出结果是
A 3 B 8 C 4 D 9
31 有以下程序
#include”s