C语言程序设计 试卷1
一、单选题
1. 请读程序片段(字符串内没有空格字符):
printf("%d/n",strlen("ATS/n012/1//") );
上面程序片段的输出结果是______。
A、11
B、10
C、9
D、8
2. 执行下面程序片段的结果是______。
int x=23;
do
{
printf("%2d",x--);
}
while(!x);
A、打印出321
B、打印出23
C、不打印任何内容
D、陷入死循环
3. 设有
static char str[]="Beijing";
则执行
printf("%d/n",strlen(strcpy(str,"China") ) );
后的输出结果为______。
A、5
B、7
C、12
D、14
4. C语言中,下列叙述正确的是______。
A、不能使用do-while语句构成的循环
B、do-while语句构成的循环,必须用break语句才能退出
C、do-while语句构成的循环,当while语句中的表达式值为非零时结束循环
D、do-while语句构成的循环,当while语句中的表达式值为零时结束循环
5. 请选出可用做C语言用户标识符的一组标识符______。
① void ② a3_b3 ③ For ④ 2a
define _123 _abc DO
WORD IF case sizeof
A、①
B、②
C、③
D、④
6. 以下选项中,能定义s为合法的结构体变量的是______。
A、typedef struct abc
{ double a;
char b[10];
} s;
B、struct
{ double a;
char b[10];
}s;
C、struct ABC
{ double a;
char b[10];
}
ABC s;
D、typedef ABC
{ double a;
char b[10];
}
ABC s;
7. 以下程序的输出结果是______。
main()
{ int a=-1,b=1, k;
if((++a<0)&&!(b--<=0))
printf("%d %d/n",a,b);
else
printf("%d %d/n",b,a);
}
A、-1 1
B、0 1
C、1 0
D、0 0
8. 若有以下说明和语句,请选出哪个是对c数组元素的正确引用______。
int c[4][5],(*cp)[5];
cp=c;
A、cp+1
B、*(cp+3)
C、*(cp+1)+3