C语言题库A方案
一、选择题
1、下面的程序 main() { int x=3; do{
printf(\}while(!(--x) ); } ______。
A:输出的是1 B:输出的是1和-2 C:输出的是3和0 D:是死循环 答案:B
2、执行下面程序片段的结果是______。 int x=23; do {
printf(\}
while(!x);
A:打印出321 B:打印出23 C:不打印任何内容 D:陷入死循环 答案:B 3、有以下程序段
int n=0,p;
do {scanf(\此处do-while循环的结束条件是______。 A:p的值不等于12345并且n的值小于3 B:p的值等于12345并且n的值大于等于3 C:p的值不等于12345或者n的值小于3 D:p的值等于12345或者n的值大于等于3 答案:D 4、有以下程序 main()
{ int s=0,a=1,n; scanf(\
do {s+=1; a=a-2;} while(a!=n); printf(\}
若要使程序的输出值为2,则应该从键盘给n输入的值是______。 A:-1 B:-3 C:-5 D:0 答案:B
5、若变量已正确定义,有以下程序段 i=0; do printf(\printf(\其输出结果是______。 A:0,0
1
B:0,1 C:1,1
D:程序进入无限循环 答案:B 6、下面的程序 main() { int a=2; do{
printf(\}while(!(--a) ); }
______。
A:输出的是0
B:输出的是0和-3
C:输出的是3和0 D:是死循环
答案:A
7、有以下程序段 int n,t=1,s=0; scanf(\
do{ s=s+t; t=t-2; }while (t!=n);
为使此程序段不陷入死循环,从键盘输入的数据应该是______。 A:任意正奇数
B:任意负偶数
C:任意正偶数
D:任意负奇数 答案:D
知识点:知识点/选择题/C5循环结构程序设计/DO-WHILE循环T
8、有如下程序 main( ) { int n=9;
while(n>6) {n--;printf(\}
该程序段的输出结果是______。 A:987 B:876 C:8765 D:9876 答案:B 9、有如下程序 main( ) { int n=10;
while(n>6) {n--;printf(\}
该程序段的输出结果是______。 A:987 B:9876 C:8765 D:6789 答案:B 10、有如下程序 main( ) { int n=8;
while(n>6) { n--;printf(\}
该程序段的输出结果是______。 A:98 B:76
C:87 D:78 答案:B 11、有如下程序 main( ) { int a=9;
while(a>7) {a--;printf(\}
该程序段的输出结果是______。 A:98 B:87 C:876 D:987 答案:B
知识点:知识点/选择题/C5循环结构程序设计/Swhile循环结构T
12、以下程序的输出结果是______。 main() { int n=4;
while(n--)printf(\} A:2 0 B:3 1 C:3 2 1 D:2 1 0 答案:A
13、以下程序的输出结果是______。 main()
{ int num=4; while(num>=1)
2
{ num--; printf(\}
A) B) C) D) 3 3 3 3 2 2 2 1 1 0 A:A) B:B) C:C) D:D) 答案:A 14、有以下程序 main()
{ int x=0,y=5,z=3; while(z-->0&&++x<5) y=y-1; printf(\}
程序执行后的输出结果是______。 A:3,2,0 B:3,2,-1 C:4,3,-1 D:5,-2,-5 答案:B 15、请读程序: #include
int num=0; while( num <=2){
num++; printf(\} }
上面程序的输出结果是______。 ① 1 ② 1 ③ 1 ④ 1 2 2 2 3 3 4 A:① B:② C:③ D:④ 答案:C 16、有以下程序 main() { int k=5;
while(--k) printf(\printf(\}
执行后的输出结果是______。 A:1 B:2 C:4 D:死循环 答案:A
知识点:知识点/选择题/C5循环结构程序设计/WHILE循环结构T
17、若执行下面的程序时从键盘上输入3和4, main() { int a,b,s;
scanf(\s=a; if(a
printf(\}
则输出是______。
A:9 B:16 C:18 D:20 答案:B
18、阅读以下程序 main() { int x; scanf(\
if(x--<5)printf(\else printf(\}
程序运行后,如果从键盘上输入5,则输出结果是______。 A:3 B:4 C:5 D:6 答案:B
19、下列条件语句中,功能与其他语句不同的是______。 A:if(a) printf(\else printf(\ B:if(a==0) printf(\printf(\
C:if (a!=0) printf(\
3
printf(\
D:if(a==0) printf(\printf(\答案:D
20、若执行下面程序时从键盘上输入5, main() {
int x;
scanf(\
if(x++>5) printf(\else printf(\
}
则输出是______。
A:7 B:6 C:5 D:4
答案:B
21、有以下计算公式
若程序前面已在命令行中包含math.h文件,不能够正确计算上述公式的程序段是______。 A:if(x>=0) y=sqrt(x); else y=sqrt(-x); B:y=sqrt(x); if(x<0) y=sqrt(-x); C:if(x>=0) y=sqrt(x); if(x<0) y=sqrt(-x); D:y=sqrt(x>=0?x:-x); 答案:B 22、若执行以下程序时从键盘上输入9,则输出结果是______。 main() { int n; scanf(\
if(n++<10) printf(\else printf(\} A:11 B:10 C:9 D:8 答案:B
23、设变量x和y均已正确定义并赋值。以下if语句中,在编译时将产生错误信息的是______。 A:if(x++);
B:if(x>y && y!=0); C:if(x>0) x-- else y++; D:if(y<0) {;} else x++; 答案:C
24、若变量已正确定义,有以下程序段 int a=3,b=5,c=7; if(a>b) a=b; c=a;
if(c!=a) c=b;
printf(\其输出结果是______。
A:程序段有语法错 B:3,5,3 C:3,5,5 D:3,5,7 答案:B
25、有以下程序段 int a,b,c; a=10; b=50; c=30; if(a>b) a=b, b=c; c=a;
printf (\程序的输出结果是______。 A:a=10 b=50 c=10 B:a=10 b=50 c=30 C:a=10 b=30 c=10 D:a=50 b=30 c=50 答案:A
知识点:知识点/选择题/C4选择结构程序设计/IF语句T 26、设有说明语句: char a = '\\72'; 则变量a ______。 A:包含1个字符 B:包含2个字符 C:包含3个字符 D:说明不合法 答案:A
27、设有说明语句:char a='\\123';则变量a______。 A:包含1个字符 B:包含2个字符 C:包含3个字符 D:包含4个字符 答案:A
4
28、以下选项中,非法的字符常量是______。 A:'\\t' B:'\\17' C:\ D:'\\xaa' 答案:C 29、有以下程序 main()
{ char a,b,c,d; a='\\'; b='\\xbc'; c='\\0xab'; d='\\0127'; printf(\}
编译时出现错误,以下叙述中正确的是______。 A:程序中只有a='\\';语句不正确 B:b='\\xbc';语句不正确 C:d='\\0127';语句不正确
D:a='\\';和 c='\\0xab';语句都不正确 答案:D
30、以下合法的字符型常量是______。 A:'\\x13' B:'\\081' C:'65' D:\答案:A
知识点:知识点/选择题/C2基本数据类型及表达式/转义字符T
31、已知i、j、k为int型变量,若从键盘输入:1,2,3↙,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是______。