*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 { 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 { int a; float b,c; scanf(\ 若运行时从键盘上输入9876543210 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 { 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 &&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 { 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 { 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 { 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 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 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 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