计算机选择题全部 下载本文

*1、A

一个C程序的执行是从( )。

A)本程序的main函数开始,到main函数结束

B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C)本程序的main函数开始,到本程序文件的最后一个函数结束 D)本程序文件的第一个函数开始,到本程序main函数结束 &&H&& A B C D

&&D&& A

*2、C

以下叙述正确的是:

A)在C程序中,main函数必须位于程序的最前面 B)C程序的每行中只能写一条语句 C)C语言本身没有输入输出语句

D)在对一个C程序进行编译的过程中,可发现注释中的拼写错误 &&H&& A B C D

&&D&& C

*3、A

以下关于计算机程序叙述正确的是:

A)程序就是计算机能够识别和执行的一组指令 B)程序的执行必须需要人为干预 C)一个程序可以具有多种功能 D)一台计算机中只有一个程序 &&H&& A B C D

&&D&& A

*4、B

从计算机语言的发展上来讲,不包括:

A)机器语言 B)面向对象语言 C)高级语言 D)汇编语言 &&H&& A B C D

&&D&& B

*5、B

一个C语言程序从编写到得到正确的执行结果,一般需要建立或生成几个程序文件,其中不包括: A)源程序 B)语言程序 C)可执行程序 D)目标程序 &&H&& A B C D

&&D&& B

*6、A

一个C语言程序从编写到得到正确的执行结果,一般需要经过四个阶段,正确的是: A)程序编辑、程序编译、程序链接、程序执行 B)程序编译、程序编辑、程序链接、程序执行 C)程序执行、程序编译、程序链接、程序编辑 D)程序编辑、程序链接、程序编译、程序执行 &&H&& A B C D

&&D&& A

*7、C

以下关于程序模块和程序文件叙述不正确的是: A)一个程序可以由若干个程序模块构成

B)一个程序可以由若干个程序文件构成 C)程序模块就是程序文件

D)一个程序模块可以包括多个程序文件,一个程序文件也可以包括多个程序模块 &&H&& A B C D

&&D&& C

*8、B

以下关于C语言函数叙述不正确的是: A)一个程序可以包含多个函数 B)一个程序可以包含多个主函数

C)函数是组成C语言程序的基本模块

D)一个函数既可以做主调函数,又可以做被调函数 &&H&& A B C D

&&D&& B

*9、C

以下关于程序调试和程序测试叙述不正确的是: A)程序调试就是找出并改正程序的错误

B)程序测试就是以不同的输入条件测试程序的完整性和健壮性 C)编写程序可以只调试不测试

D)编写程序既需要调试,还需要测试 &&H&& A B C D

&&D&& C

*10、D

以下关于C语言程序叙述不正确的是: A)一个程序编译没有错误就表示程序正确 B)程序得出运行结果就可以表示程序正确

C)程序经过运行,并且得出正确结果,就可以表示程序正确

D)通过各种情况测试正确后,就可以表示程序正确 &&H&& A B C D

&&D&& D

*1、B

在C语言中,要求运算量必须是整型或字符型的运算符是: A) && B) % C) ! D) + &&H&& A B C D

&&D&& B

*2、D

设有如下定义: int x=10,y=3,z; 则语句 printf(\的输出结果是 A) 1 B) 0 C) 4 D) 3 &&H&& A B C D

&&D&& D

*3、D

若d为double型变量,则表达式d=1,d+5,d++的值是: A) 1 B) 6.0 C) 2.0 D) 1.0 &&H&&

A B C D

&&D&& D

*4、A

a,b均为整数,且b!=0,则表达式a/b*b+a%b的值是: A) a B) b

C) a被b除的整数部分 D) a被b除的商的整数部分 &&H&& A B C D

&&D&& A

*5、A

设有以下语句:int x=10;x+=3+x%(-3),则x的值是: A) 14 B) 15 C) 11 D) 12 &&H&& A B C D

&&D&& A

*6、B

以下符合C语言语法的表达式: A) d=9+e+f=d+9 B) d=9+e,f=d+9 C) d=9+e=e++,d+9 D) d=9+e++=d+7 &&H&& A B

C D

&&D&& B

*7、D

若有定义:int y=7,x=12,则能使值为3的表达式是; A) x%=(y%=5) B) x%=(y-y%5) C) x%=y-y%5 D) (x%=y)-(y%=5) &&H&& A B C D

&&D&& D

*8、A

在C语言中(以16位PC机为例),五种基本数据类型存储空间长度的排列顺序是: A) char

&&D&& A

*9、D

在C语言的变量类型说明中,int,char,float等类型的长度是: A) 固定的

B) 由用户自己定义的 C) 任意的

D) 与机器字长有关的 &&H&& A B C D

&&D&& D

*10、C

下列四组常数中,均是正确的八进制数或十六进制数的一组是: A) 016

B) 0abc 017 0xa C) 010 0x11 0x16 D) 0A12 7FF -123 &&H&& A B C D

&&D&& C

*11、A

下列四组常数中,均是合法整型常量的一组是: A) 160 0xffff 011 B) -0xcdf 01a 0xe C) -01 986,012 0668 D) -0x48a 2e5 0x &&H&& A B C D

&&D&& A

*12、A

下列四组转义符中,均合法的一组是: A) '\\t' '\\\\' '\\n' B) '\\' '\\017' '\\x' C) '\\018' '\\f' '\\xab' D) '\\\\0' '\\101' '\\xif' &&H&& A B C D

&&D&& A

*13、D

设有说明:char w; int x; float y; double z; 则表达式: w*x+z-y值的数据类型是: A) float B) char C) int D) double &&H&& A B C D

&&D&& D

*14、D

以下能正确定义变量a、b和c并为其赋值的语句是: A) int a=5; b=5; c=5; B) int a,b,c=5; C) a=5, b=5, c=5; D) int a=5, b=5, c=5; &&H&& A B C D

&&D&& D

*15、A

已知字母\的ASCII码为十进制的65,下面程序输出正确的是:

main() { char ch1, ch2; ch1='A'+'5'-'3'; ch2='A'+'6'-'3'; printf(\ A) 67, D B) B, C

C) 不确定的值 D) C, D &&H&& A B C D

&&D&& A

*16、C

下面程序的输出是: main() { unsigned int a=32768; printf(\ A) a=32768 B) a=32767 C) a=-32768 D) a=-1 &&H&& A B C D

&&D&& C

*17、A

在C语言中,下面合法的长整型数是: A) 0L B) 4967

C) 0.054838743 D) 21.869e10 &&H&& A B C D

&&D&& A

*18、C

设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f的数据类型是: A) int型 B)float型 C) double型 D)不确定 &&H&& A B C D

&&D&& C

*19、C

C语言中的变量名只能由字母,数字和下划线三种字符组成,且第一个字符:

A) 必须为字母 B) 必须为下划线

C) 必须为字母或下划线

D) 可以是字母,数字或下划线中的任意一种 &&H&& A B C D

&&D&& C

*20、D

执行printf(\后输出结果是: A) -1, -1, -1 B) ffff, -01, -1 C) ffff, 32767, -1 D) ffff, 177777, -1 &&H&& A B C D

&&D&& D

*21、B

下面四个选项中,均是合法浮点数的选项是: A) 1e+1 5e-9.4 03e2 B) -.60 12e-4 -8e5 C) 123e 1.2e-.4 e-4 D) -e3 e-4 5.e-0 &&H&& A B C D

&&D&& B

*22、A

在C语言中,以下叙述不正确的是:

A) 在C程序中,无论是整数还是实数,都能被准确无误的表示 B) 在C程序中,变量名代表存储器中的一个位置

C) 静态变量的生存期与整个程序的生存期相同 D) C语言中变量必须先说明后引用 &&H&& A B C D

&&D&& A

*23、D

若有定义int x=3,y=2和float a=2.5,b=3.5,则表达式: (x+y)%2+(int)a/(int)b的值是: A) 0 B) 2 C) 1.5 D) 1 &&H&& A B C D

&&D&& D

*24、B

阅读下面的程序 main() { int i,j;

float x,y; scanf(\ scanf(\ printf(\ printf(\ }

如果从键盘上输入 32,18<回车> 12.5,-4.3<回车> 则程序的运行结果是: A) i=32,j=18

B) i=0,j=0 x=12.500000,y=-4.300000 x=12.500000,y=-4.300000 C) i=32,j=18

D) i=0,j=0 x=12.5,y=-4.3 x=12.5,y=-4.3 &&H&& A B C D

&&D&& B

*25、D

阅读下面的程序 #include main()

{ char c1,c2; c1=getchar(); c2=c1+3; printf(\

已知'A'的ASCII的值为65,如果从键盘上输入 D<回车> 则程序的运行结果是: A) D,68 B) 'G',68 C) D,71 D) G,71 &&H&& A B C D

&&D&& D

*26、A

若x和y都是int型变量,x=100,y=200,且有下面的程序片段: printf(\上面程序片段的输出结果是 A) 200 B) 100 C) 100 200

D) 输出格式符不够,输出不确定的值 &&H&& A B C D

&&D&& A

*27、B

C语言中最简单的数据类型包括 A) 整型,实型,逻辑型 B) 整型,实型,字符型 C) 整型,字符型,逻辑型 D) 整型,实型,逻辑型,字符型 &&H&& A

B C D

&&D&& B

*28、A

执行语句printf(\的输出结果是: A) 32768 B) 0 C) -1

D) 不定值 &&H&& A B C D

&&D&& A

*29、B

设x为int型变量,则执行语句x=10和x+=x-=x-x后,x的值为: A) 10 B) 20 C) 40 D) 30 &&H&& A B C D

&&D&& B

*30、A

设有如下变量定义: int i=8,k,a,b; unsigned long w=5;double x=1.42, y=5.2; 则以下符合C语言语法的表达式是: A) a+=a-=(b=4)*(a=3) B) x%(-3) C) a=a*3=2 D) y=float(i) &&H&& A B

C D

&&D&& A

*31、D

以下程序的输出结果是:

main() { int a=12, b=12; printf(\ A) 10,10 B) 12,12 C) 11,10 D) 11,13 &&H&& A B C D

&&D&& D

*32、C

若有代数式(3ae)/(bc),则下面不正确的C语言表达式是: A) a/b/c*e*3 B) 3*a*e/b/c C) 3*a*e/b*c D) a*e/c/b*3 &&H&& A B C D

&&D&& C

*33、B

若有以下定义和语句:

int a=010, b=0x10, c=10; printf(\则输出结果是: A) 10,10,10 B) 8,16,10 C) 8,10,10 D) 8,8,10 &&H&& A B

C D

&&D&& B

*34、B

执行下列语句后,输出结果是: int a; long int b=65536; a=b; printf(\ A) 65536 B) 0 C) -1 D) 1 &&H&& A B C D

&&D&& B

*35、A

若有定义int a=12,则表达式a+=a-=a*=a的值是: A) 0 B) -264 C) -144 D) 132 &&H&& A B C D

&&D&& A

*36、B

执行以下程序,输出结果是:

main() { int a=353; char b; b=a; printf(\ A) b B) a C) 65

D) 错误信息 &&H&& A B C

D

&&D&& B

*37、A

下面程序的输出结果是:

main() { int a=5,b=3; float x=3.14, y=6.5; printf(\ A) 1,0 B) 0,1 C) 1,1 D) 0,0 &&H&& A B C D

&&D&& A

*38、B

下面程序的输出结果是:

main() { int a=-1, b=4, k; k=(a++<=0)&&(!(b--<=0)); printf(\ A) 1,1,2 B) 1,0,3 C) 0,1,2 D) 0,0,3 &&H&& A B C D

&&D&& B

*39、A

下面程序的输出结果是:

main() { int a,b,c; long int d; b=(a=32767, a++); c=d=0xffff; printf(\ A) 8000,32767,-1,-1 B) -1,-1,32767,8000 C) -1,-1,-1,-1 D) 32767,-1,-1,-1 &&H&& A B

C D

&&D&& A

*40、D

阅读下面的程序 main() { int i,j; scanf(\ 如果从键盘上输入1234567<回车>,则程序的运行结果是: A) i=123,j=4567 B) i=1234,j=567 C) i=1,j=2 D) i=123,j=45 &&H&& A B C D

&&D&& D

*41、A

已知a=12,则表达式a+=a-=a*=a的结果是: A) 0 B) 144 C) 12 D) -264 &&H&& A B C D

&&D&& A

*42、B

已知x=2.5,a=7,y=4.7,则表达式 x+a%3*(int)(x+y)%2/4 的结果是: A) 2.4 B) 2.5 C) 2.75 D) 0 &&H&& A B C

D

&&D&& B

*43、C

阅读下面的程序

main() { int i,j,m,n; i=8;j=10; m=++i; n=j++; printf(\ 程序的运行结果是: A) 8,10,8,10 B) 9,11,8,10 C) 9,11,9,10 D) 9,10,9,11 &&H&& A B C D

&&D&& C

*44、D

阅读下面的程序

main() { int i,j; i=010; j=9; printf(\则程序的运行结果是: A) 1,19 B) -1,19 C) 1,17 D) -1,17 &&H&& A B C D

&&D&& D

*45、C

阅读下面的程序 main() { printf(\则程序的运行结果是: A) 0.3333333% B) 0.33%

C) 0.333333% D) 0.333333%% &&H&& A B

C D

&&D&& C

*46、A

阅读下面的程序 main() { char ch; scanf(\ 如果从键盘上输入 abc<回车> 则程序的运行结果是: A) a B) b C) c

D) 程序语法出错 &&H&& A B C D

&&D&& A

*47、A

阅读下面的程序

main() { int i,j; scanf(\ 如果从键盘上输入 12 345 67<回车> 则程序的运行结果是: A) 12 67 B) 12 345 C) 12345

D) 程序语法出错 &&H&& A B C D

&&D&& A

*48、C 请读程序:

#include main()

{ int a; float b,c; scanf(\ 若运行时从键盘上输入9876543210(表示回车),则上面程序的输出结果是 A) a=98,b=765,c=4321 B) a=10,b=432,c=8765

C) a=98,b=765.000000,c=4321.000000 D) a=98,b=765.0,c=4321.0 &&H&& A B C D

&&D&& C

*49、D

以下程序的输出结果是 main() { int x=10,y=10; printf(\ A) 10 10 B) 9 9 C) 9 10 D) 10 9 &&H&& A B C D

&&D&& D

*50、D

以下程序的输出结果是

main() {int a=-1,b=4,k; k=(++a<0) && !(b--<=0); printf(\ A) 1 0 4 B) 1 0 3 C) 0 0 3 D) 0 0 4 &&H&& A B C D

&&D&& D

*1、D

若k是int型变量,且有下面的程序片段:

k=8; if (k<=0) if (k==0) printf(\ 上面程序片段的输出结果是

A) #### B) &&&& C) ****

D) 有语法错误,无输出结果 &&H&& A B C D

&&D&& D

*2、B

下列程序段执行后的输出结果是( )。 int n='c'; switch(n++)

{ default: printf(\ case 'a': case 'A': case 'b': case 'B': printf(\ case 'c':

case 'C': printf(\ case 'd':

case 'D': printf(\ A) good B) passwarn C) pass D) goodpass &&H&& A B C D

&&D&& B

*3、A

选择出合法的if语句(设int x,y;):

A) if (x!=y) if(x>y) printf(\

B) if (x!=y) if (x>y) printf(\ else printf(\ else printf(\ C) if (x!=y) if(x>y) printf(\ D) if (x!=y) if(x>y) printf(\ else printf(\&&H&& A B C

D

&&D&& A

*4、D

假定等级和分数有以下对应关系: 等级:A 分数:85~100 等级:B 分数:60~84 等级:C 分数:60 以下对于等级grade输出相应的分数区间,能够完成该功能的程序段是( )。

A) switch (grade) { case 'A':printf(\以下\\n\等级错误!\\n\

B) switch (grade) { case 'A':printf(\case 'B':printf(\case 'C':printf(\以下\\n\等级错误!\\n\

C) switch (grade) { case 'A':printf(\case 'B':printf(\case 'C':printf(\以下\\n\等级错误!\\n\

D) switch (grade) { case 'A':printf(\case 'B':printf(\case 'C':printf(\以下 \\n\等级错误!\\n\&&H&& A B C D

&&D&& D

*5、B

若执行下面的程序从键盘上输入5,则输出结果是

main( ) {int x; scanf(\ A) 7 B) 6 C) 5 D) 4 &&H&& A B C D

&&D&& B

*6、D

以下程序输出结果是

main( ) { int m=4; if (++m>5) printf(\,m--); else printf(\,--m); } A) 7 B) 6

C) 5 D) 4 &&H&& A B C D

&&D&& D

*7、B

若执行下面的程序从键盘上输入9,则输出结果是

main( ) {int n; scanf(\ A) 11 B) 10 C) 9 D) 8 &&H&& A B C D

&&D&& B

*8、B

当a=1,b=3,c=5,d=4时,执行下面一段程序后,x的值为

if (a

&&D&& B

*9、C

下面程序的输出是

main( ) {int a=-1,b=4,k; k=(a++<=0) && (!(b--<=0)); printf(\ A) 0 0 3

B) 0 1 2 C) 1 0 3 D) 1 1 2 &&H&& A B C D

&&D&& C

*10、B

执行下面的程序后,a的值为

main( ) { int a,b; for(a=1,b=1;a<=100;a++) { if(b>=20) break; if(b%3==1) { b+=3; continue; } b-=5; } } A) 7 B) 8 C) 9 D) 10 &&H&& A B C D

&&D&& B

*11、C 请读程序:

#include main( )

{ float x,y; scanf(\

if (x<0.0) y=0.0; else if ((x<5.0) && (x!=2.0)) y=1.0/(x+2.0); else if (x<10.0) y=1.0/x; else y=10.0; printf(\

若运行时从键盘上输入2.0(表示回车),则上面程序的输出结果 A) 0.000000 B) 0.250000 C) 0.500000 D) 1.000000 &&H&& A B C D

&&D&& C

*12、A

两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是

main( ) { int x; scanf(\ A) 7和5 B) 6和3 C) 7和4 D) 6和4 &&H&& A B C D

&&D&& A

*13、D

以下程序的输出结果是

main( ) {int a=-1,b=4,k; k=(++a<0) && !(b--<=0); printf(\ A) 1,0,4 B) 1,0,3 C) 0,0,3 D) 0,0,4 &&H&& A B C D

&&D&& D

*14、D

下面的程序

main( ) { int x=3,y=0,z=0; if (x=y+z) printf(\A) 有语法错误不能通过编译。 B) 输出* * * *。

C) 可以通过编译,但是不能通过连接,因而不能运行。 D) 输出# # # #。 &&H&& A B C D

&&D&& D

*15、A

下面的程序,当j的取值分别为3,2,1时的输出结果分别是( )。 main( )

{ int j,p=10; scanf(\\ A) 9 10 10 B) 9 8 7 C) 10 10 9 D) 9 9 9 &&H&& A B C D

&&D&& A

*16、D

以下程序的输出结果是

main( ) { int a=100; if (a>100) printf(\ A) a<=100 B) 100 C) 0 D) 1 &&H&& A B C D

&&D&& D

*17、B

假定所有变量均已正确说明,下列程序段运行后x的值是 a=b=c=0;x=35; if (!a) x--; else if (b); if (c) x=3; else x=4; A) 34 B) 4 C) 35 D) 3 &&H&& A B C

D

&&D&& B

*18、C

若已定义 int a=25,b=14,c=19;以下三目运算符(? :)所构成的语句的执行结果是 a++<=25 && b--<=2 && c-- ? printf(\:

printf(\ A) ***a=26,b=13,c=19 B) ***a=25,b=13,c=18 C) ###a=26,b=13,c=19 D) ###a=25,b=13,c=18 &&H&& A B C D

&&D&& C

*19、C

下面程序的输出结果是( )。

main( ) { int a=-1,b=1,k; if ((++a<0) && (b--<=0)) printf(\%d\\n\printf(\ A) -1 1 B) 0 1 C) 1 0 D) 0 0 &&H&& A B C D

&&D&& C

*20、A

与 y=(x>0?1:x<0?-1:0); 的功能相同的if语句是 A) if (x>0) y=1;

B) if(x) else if (x<0) y=-1; if (x>0) y=1; else y=0; else if (x<0) y=-1; else y=0; C) y=-1;

D) y=0; if(x) if (x>=0) if (x>0) y=1; if (x>0) y=1; else if (x==0) y=0; else y=-1; else y=-1; &&H&& A

else B C D

&&D&& A

*21、A

有如下程序 main( )

{ int x=1,a=0,b=0; switch(x) { case 0: b++; case 1: a++; case 2: a++;b++; printf(\ 该程序的输出结果是 A) a=2,b=1 B) a=1,b=1 C) a=1,b=0 D) a=2,b=2 &&H&& A B C D

&&D&& A

*22、C

有如下程序

main( ) { float x=5.0,y; if(x<0.0) y=0.0; else if (x<10.0) y=1.0/x; else y=1.0; printf(\ 该程序的输出结果是 A) 0.000000 B) 0.50000 C) 0.200000 D) 1.000000 &&H&& A B C D

&&D&& C

*23、C

有如下程序

main( ) { int a=2,b=-1,c=2; if (a

} A) 0 B) 1 C) 2 D) 3 &&H&& A B C D

&&D&& C

*24、D

假定w、x、y、z、m均为int型变量,有如下程序段:

w=1;x=2;y=3;z=4; m=(w

&&D&& D

*25、C

以下程序的执行结果是( )。 #include

main( ) { int a,b,c; a=2;b=3;c=1; if (a>b) if (a>c) printf(\else printf(\printf(\ A) 2 B) 2 end C) end D) 3 end &&H&& A B C D

&&D&& C

*26、A

以下程序的执行结果是( )。 #include

main( ) { int a,b,c,d,x; a=c=0; b=1; d=20; if (a) d=d-10; else if(!b) if (!c) x=15; else x=25; printf(\ A) d=20 B) d=10 C) d=15 D) 25 &&H&& A B C D

&&D&& A

*27、A

如果c为字符型变量,下面________可以判断c是否为空格。 A) if(c==32) B) if(c=' ') C) if(c='32') D) if(c='') &&H&& A B C D

&&D&& A

*28、A

如果c为字符型变量,判断c是否为空格不能使用________。 A) if(c=='32') B) if(c==32) C) if(c=='\\40') D) if(c==' ') &&H&& A B C D

&&D&& A

*29、B

设ch是char型变量,值为'A',则表达式 ch=(ch>='A' && ch<='Z')?ch+32:ch的值是: A) Z B) a C) z D) A &&H&& A B C D

&&D&& B

*30、A

设a为整型变量,不能正确表达数学关系10

B) a==11||a==12||a==13||a==14 C) a>10&&a<15

D) !(a<=10)&&!(a>=15) &&H&& A B C D

&&D&& A

*31、C

运行下面程序时,若从键盘输入数据为\,则输出结果是( )。 main( )

{ int t; scanf(\

else if (t>=70) printf(\ A) B B) B OK C) B

D) B OK C D E OK &&H&& A B C D

&&D&&

C

*32、A

以下程序的运行结果是( )。 main( )

{ int a=-1,b=3,c=3; int s=0,w=0,t=0; if (c>0) s=a+b; if (a<=0) { if (b>0) if (c<=0) w=a-b; } else if (c>0) w=a-b; else t=c; printf(\ }

A) 2,0,0 B) 0,0,2 C) 0,2,0 D) 2,0,2 &&H&& A B C D

&&D&& A

*33、B

运行下面程序时,从键盘输入\,则输出结果是( )。 main( ) { int t,h,m;

scanf(\h=(t/100); if (h==0) h=12; printf(\m=t0; if (m<10) printf(\printf(\

if (t<1200||t==2400) printf(\ A) 6:05PM B) 4:05PM C) 16:05AM D) 12:05AM &&H&& A B C D

&&D&& B

*34、B

运行下面程序时,从键盘输入数据为\,则输出结果是( )。 #include

main( ) { int a,b,c; scanf(\

{ case 1: printf(\break;

case 4: { if(c!=0) {printf(\ A) 10 B) 8

C) 65 D) error &&H&& A B C D

&&D&& B

*35、C

以下程序的执行结果是( )。 #include \ main( )

{ int a=8,b=-7,c=5; switch (a>0) { case 1: switch (b<0) { case 1:printf(\case 2:printf(\

case 0: switch (c!=0) { case 0:printf(\case 1:printf(\default:printf(\

default:printf(\ A) *#$ B) & C) @#& D) @*& &&H&& A B C D

&&D&& C

*36、B

若变量已正确定义,以下语句段的输出结果是( )。 int x=0,y=2,z=3; switch (x) { case 0: switch (y==2)

{ case 1: printf(\ switch (z) { case 1: printf(\ default: printf(\ A) * B) &# C) *% D) %# &&H&& A B C D

&&D&& B

*37、B

运行下面程序时,若从键盘输入\,则程序的输出结果是( )。 #include main( )

{ int magic=123; int guess; scanf(\

if (guess==magic) printf(\ if (guess>magic) printf(\ A) **Right** B) **Wrong**Too high** C) Too high** D) Too low** &&H&& A B C D

&&D&& B

*38、C 请读程序:

#include main( )

{ char c1,c2,c3,c4; int n; long int x; c1=c2=c3=c4=' ';

scanf(\

switch (n) { case 4:c4=x+'0';x=x/10; case 3:c3=x+'0';x=x/10; case 2:c2=x+'0';x=x/10; case 1:c1=x+'0'; }

printf(\

若执行程序时,从键盘上输入1234,则输出结果是 A) 1234 B) 1 2 3 4 C) 4321 D) 4 3 2 &&H&& A B C D

&&D&& C

*39、B

下面程序的输出结果是 #include main( )

{ int a=2,b=7,c=5; switch(a>0) { case 1:switch(b<0) { case 1: printf(\break; }

case 0:switch(c==5) { case 0: printf(\

case 1: printf(\ A) & B) !#& C) %% D) @*& &&H&& A B C D

&&D&& B

*40、C

运行下面程序时,若从键盘输入数据为\,则输出结果是( )。 main( )

{ int num,i,j,k,place; scanf(\

if (num>99) place=3; else if(num>9) place=2;

else place=1; i=num/100; j=(num-i*100)/10; k=(num-i*100-j*10); switch (place)

{ case 3: printf(\break; case 2: printf(\break; case 1: printf(\

A) 123 B) 1,2,3 C) 321 D) 3,2,1 &&H&& A B C D

&&D&& C

*1、D

以下程序段的输出结果是( )。 int k,j,s;

for(k=2;k<6;k++,k++) { s=1;

for(j=k;j<6;j++) s+=j; }

printf(\ A) 1 B) 9 C) 11 D) 10 &&H&&

A B C D

&&D&& D

*2、B

定义如下变量: int n=10;

则下列循环的输出结果是( )。 while(n>7) { n--;

printf(\} A) 10 9 8 B) 9 8 7 C) 10 9 8 7 D) 9 8 7 6 &&H&& A B C D

&&D&& B

*3、B

下面程序的输出结果是( )。 main( ) { int x=3; do{

printf(\

}while(!(--x)); } A) 1 B) 1 -2 C) 3 0 D)是死循环 &&H&& A B C D

&&D&& B

*4、B

下面程序的输出结果是( )。 main( ) { int y=9;

for(;y>0;y--) { if(y%3==0)

{ printf(\ continue; } } }

A) 741 B) 852 C) 963 D) 875421 &&H&& A B C D

&&D&& B

*5、C

以下程序段的输出结果是( )。 int k,n,m; n=10; m=1; k=1;

while (k<=n) { m*=2; k+=4; }

printf(\ A) 4 B) 16 C) 8 D) 32 &&H&& A B C D

&&D&& C

*6、C

若有以下程序段,w和k都是整型变量: w=k;

LB:if(w==0) goto LE; w--;

printf(\ goto LB; LE:

则不能与上面程序段等价的循环语句是 A)

for(w=k; w!=0; w--) B) w=k;

while(w--!=0) printf(\ printf(\w++; C) w=k; do{w--; D) for(w=k; w;

--w) printf(\

}while(w!=0) printf(\

&&H&& A B

C D

&&D&& C

*7、B

设有如下程序段: int i=0, sum=1; do { sum+=i++; } while(i<6);

printf(\

上述程序段的输出结果是( )。 A) 11 B) 16 C) 22 D) 15 &&H&& A B C D

&&D&& B

*8、A

执行下面程序后sum的值是( )。 main( ) {

int i,sum=0;

for(i=1;i<6;i++) sum+=i; printf(\ } A) 15 B) 14

C) 不确定 D) 0 &&H&& A B C D

&&D&& A

*9、C

以下程序的输出结果是( )。 #include main( ) {

int count,i=0;

for(count=1; count<=4; count++) {

i+=2;

printf(\ } } A) 20 B) 246 C) 2468 D) 2222 &&H&& A B C D

&&D&& C

*10、B

下面程序的输出结果是( )。 main( ) {

unsigned int num,k; num=26; k=1; do {

k*=num; num/=10; } while(num); printf(\}

A) 2 B) 12 C) 60 D) 18 &&H&& A B

C D

&&D&& B

*11、A

运行下面的程序,如果从键盘上分别输入6和4,则输出结果是( )。 main( ) {

int i,x;

for(i=0;i<2;i++) { scanf(\

if (x++>5) printf(\ else printf(\ } }

A) 7和5 B) 6和3 C) 7和4 D) 6和4 &&H&& A B C D

&&D&& A

*12、B

阅读以下程序: main( ) {

int x;

for(x=5;x>0;x--)

if (x--<5) printf(\ else printf(\ }

程序运行后的输出结果是( )。 A) 4,3,2 B) 4,3,1, C) 5,4,2 D) 5,3,1, &&H&& A

B C D

&&D&& B

*13、B

下面程序是计算n个数的平均值,请填空。 main( ) {

int i,n;

float x,avg=0.0; scanf(\ for(i=0;i

avg=________;

printf(\ }

i avg/i

B) x avg/n C) x avg/x D) i avg/n &&H&& A B C D

&&D&& B

*14、D

下面程序的输出结果是( )。 main( ) {

int i, k = 0, a = 0, b = 0; for(i = 1; i <= 4; i++) { k++;

if (k % 2 == 0) { a = a + k; continue; }

b = b + k;

a = a + k; }

printf(\}

A) k=5 a=10 b=4 B) k=3 a=6 b=4 C) k=4 a=10 b=3 D) k=4 a=10 b=4 &&H&& A B C D

&&D&& D

*15、C

以下程序段的执行结果是( )。 int i, j, m = 0;

for(i = 1; i <= 15; i += 4)

for(j = 3; j <= 19; j += 4) {

m++; }

printf(\A) 12 B) 15 C) 20 D) 25 &&H&& A B C D

&&D&& C

*16、D

下面程序的输出结果是( )。 main( ) {

int x, i;

for(i = 1; i <= 50; i++) { x = i;

if (++x % 2 == 0) if (x % 3 == 0)

if (x % 7 == 0) {

printf(\ } } }

A) 28 B) 27 C) 42 D) 41 &&H&& A B C D

&&D&& D

*17、B

在执行以下程序时,如果从键盘上输入:ABCdef<回车>,则输出为( #include main( ) {

char ch;

while ((ch = getchar( )) != '\\n') { if (ch >= 'A' && ch <= 'Z') { ch = ch + 32;

} else if (ch >= 'a' && ch < 'z') { ch = ch - 32; }

printf(\ }

printf(\}

A) ABCdef B) abcDEF C) abc D) DEF &&H&& A B C D

&&D&& B

*18、D

执行以下程序后,输出的结果是( )。 main( ) {

int y = 10; do {

) y--;

} while (--y); printf(\}

A) -1 B) 1 C) 8 D) 0 &&H&& A B C D

&&D&& D

*19、C

运行以下程序后,如果从键盘上输入:65 14<回车>,则输出结果为( main( ) {

int m, n;

printf(\ scanf(\ while (m != n) { while (m > n) { m -= n; }

while (n > m) { n -= m; } }

printf(\}

A) m=3 B) m=2 C) m=1 D) m=0 &&H&& A B C D

&&D&& C

*20、D

下面程序的输出结果是( )。 main( ) {

int x = 10, y = 10, i;

)。 for(i = 0; x > 8; y = ++i) {

printf(\ } }

A) 10 1 9 2 B) 9 8 7 6 C) 10 9 9 0 D) 10 10 9 1 &&H&& A B C D

&&D&& D

*21、A

下面程序的输出结果是( )。 main( ) {

int n = 4; while (n--) {

printf(\ } }

A) 2 0 B) 3 1 C) 3 2 1 D) 2 1 0 &&H&& A B C D

&&D&& A

*22、A

下面程序的输出结果是( )。 main( ) {

int i;

for(i = 1; i < 6; i++) { if (i % 2) {

printf(\ continue; }

printf(\ }

printf(\}

A) #*#*# B) ##### C) ***** D) *#*#* &&H&& A B C D

&&D&& A

*23、B

有以下程序段: s = 1.0;

for(k = 1; k <= n; k++) {

s = s + 1.0 / (k * (k + 1)); }

printf(\

请填空,使下面的程序段的功能完全与之等同。 s = 0.0; d = 1.0; k = 0; do {

s = s + d; _________;

d = 1.0 / (k * (k + 1)); } while(_________); printf(\ A) k++ k

B) k=k+1 k<=n C) d+=1 k>n D) n=n+1 k<=n &&H&& A B C D

&&D&& B

*24、C

运行以下程序后,如果从键盘上输入4 6 8 12 -9 58 2 -1<回车>,则输出结果为( )。 main( ) {

int x, i, m; do {

scanf(\ } while (x < 0 && x != -1); m = x;

while (x != -1) {

scanf(\ if (x > 0 && x > m) { m = x; } }

if (m != -1) {

printf(\ } }

A) m=-9 B) m=2 C) m=58 D) m=-1 &&H&& A B C D

&&D&& C

*25、B

运行以下程序后,如果从键盘上输入12,8<回车>,则输出结果为( )。 main( ) {

int a, b, n1, n2, t;

scanf(\ if (n1 > n2) { t = n1; n1 = n2; n2 = t; }

a = n1; b = n2;

while (b != 0) { t = a % b; a = b; b = t; }

printf(\}

A) 2,6 B) 4,24 C) 4,12 D) 8,96 &&H&& A B C

D&&D&& B

*26、B

下列程序的输出结果是( )。 main( ) {

int i, j, k;

for(i = 0;i <= 2;i++) {

for(k = 1;k <= i;k++) { printf(\ }

for(j = 0;j <= 3;j++) { printf(\ }

printf(\ } }

A) **** **** **** B) **** **** **** C) **** **** **** D)

*** **** *** &&H&& A B C D

&&D&& B

*27、C

运行以下程序后,如果从键盘上输入china#<回车>,则输出结果为 #include main( ) {

int v1 = 0, v2 = 0; char ch;

while ((ch = getchar( )) != '#') switch(ch) { case 'a': case 'h': default: v1++; case 'o': v2++; }

printf(\}

A) 2,0 B) 5,0 C) 5,5 D) 2,5 &&H&& A B