高级语言程序设计(C)模拟试题三
一、单项选择题(每小题3分,合计60分)
1. 1.设a,b,c都是int型变量,且a=3,b=4,c=5,则下面的表达式中,值为
0的表达式是 。
A.ˊaˊ&&ˊbˊ B. a
C. a||b+c&&b-c D.!((a
2.判断字符串a和b是否相等,应当使用 。
A. if(a==b) B. if(a=b)
C. if(strcpy(a,b)) D. if(strcmp(a,b))
3.请阅读以下程序:
main()
{ int a=5,b=0,c=0;
if(a=b+c) printf("% * * *\n");
else printf("% $ $ $\n");
}
以上程序 。
A. 有语法错误不能通过编译 B. 可以通过编译但不能通过连接
C. 输出* * * D.输出$ $ $
4.t为int类型,进下面的循环之前,t的值为0while( t=l ){ ……}
则以下叙述中正确的是 。A. 循环控制表达式的值为0 B. 循环控制表达式不合法C循环控制表达式的值为1D. 以上说法都不对"float *a[5];"的含义是 。
A. a是一个数组,其数组的每一个元素是指向实型数据的指针
B. a是一个指针,指向一个数组,数组的元素为实型
C. A)、B)均不对,但它是C语言正确的语句
D. C语言不允许这样定义语句
6.执行char str[10]="China\0";strlen(str)的结果是 。
A. 5 B. 6 C. 7 D.)9
7.在C语言中,如果下面变量都是int型,则输出的结果是 。
sum=pad=5; pAd=sum++,pAd++,++pAd;
printf("%d\n",pad);12.在在
A. 7 B. 6 C. 5 D. 4
8.设有程序段如下:
int k=10;
while (k=0) k=k-1;
则下面描述中正确的是 。
A. while循环执行10次 B. 循环是无限循环
C. 循环体语句一次也不执行 D. 循环体语句执行一次
9.请选出以下程序的输出结果 。
#include
sub(int x,int y,int *z)
{ *z=y-x;}
main()
{ int a,b,c;
sub(10,5,&a); sub(7,a,&b); sub(a,b,&c);
printf("%d,%d,%d\n",a,b,c);
}
A. 5,2,3 B. -5,-12,-7
C. -5,-12,-17 D. 5,-1,-7
10.以下程序的输出结果是 。
#include
main()
{ int a,b,d=241;
a=d/100%9; b=(-1)&&(-1);
printf("%d,%d\n",a,b);
}
A. 6,1 B. 2,1 C. 6,0 D. 2,0
11.当数组名作为参数传递给函数时,作为实际参数的数组名被处理为 。
A. 该数组长度 B. 该数组元素个数
C. 该数组中各元素的值 D. 该数组的首地址
12.设有如下定义structss{ char name[10]; int age; char sex;}std[3],*p=std;下面各输入语句中错误的是A. scanf("%d",&(*p).age); B. scanf("%s",&std.name);C. scanf("%c",&std[0].sex) D. scanf("%c",&(p->sex));
13.C语言中变量的缺省存储类别是 。
A. 自动(auto) B. 静态(static)
C. 寄存器(register) D. 外部(extern)
14.设有如下一段程序:
int *var,a;
a=100; var=&a;
a