C++第四、五章习题(有答案) 联系客服

发布时间 : 星期一 文章C++第四、五章习题(有答案)更新完毕开始阅读5f8dea7252ea551811a68715

第四五章习题

因为把答案的字体颜色设置成了白色,所以看不到。若要看答案,只要选中相应的位置,把字体颜色设成黑色就可以看到了!

一、选择题

1.在嵌套使用if语句时,C语言规定else总是_____C___。 A)和之前与其具有相同缩进位置的if配对 B)和之前与其最近的if配对

C)和之前与其最近的且不带else的if配对 D)和之前的第一个if配对

2.以下选项中,值为1的表达式______B__。 A)1-'0' B)1-'\\0' C)'1'-0 D)'\\0'-'0' 3.有以下程序 main() {int k=5;

while(-k) printf(\ printf(\ }

执行后的输出结果是_____d___。 A)1 B)2 C)4 D)死循环

4.在以下给出的表达式中,与while(E)中的(E)不等价的表达式是 c A)(!E=0) B) (E>0||E<0) C) (E==0) D) (E!=0) 5.要求通过while循环不断读入字符,当读入字母N时结束循环。若变量已正确定义,以下正确的程序段是 a A) while((ch=getchar())!='N') printf(\ B) while(ch=getchar()!='N') printf(\ C) while(ch=getchar()=='N') printf(\ D) while((ch=getchar())=='N') printf(\ 6.若有以下程序 main() { int y=10;

while(y- -); printf(\ }

程序运行后的输出结果是 b A)y=0 B)y=-1 C) y=1

D)while构成无限循环 7.有以下程序 main() {

int a=0,b=0,c=0,d=0; if(a=1) b=1;c=2; else d=3;

printf(“%d,%d,%d,%d\\n”,a,b,c,d);

}

程序输出 d A)0,1,2,0 B) 0,0,0,3 C)1,1,2,0 D)编译有错

8.当把以下四个表达式用作if语句的控制表达式时,有一个选项与其它三个选项含义不同,这个选项是( )。D A)k%2 B)k%2==1 C)(k%2)!=0 D)!k%2==1 17.设有定义:int k=1,m=2; float f=7;,则以下选项中错误的表达式是( )。c

A)k=k>=k B)-k++ C)k%int(f) D)k>=f>=m

9.设有定义:int a=2,b=3,c=4;,则以下选项中值为0的表达式是( )。a A)(!a==1)&&(!b==0) B)a C)a && b D)a||(b+b)&&(c-a) 10.有以下程序段 int n,t=1,s=0; scanf(\

do{ s=s+t; t=t-2; }while (t!=n);

为使此程序段不陷入死循环,从键盘输入的数据应该是( )。

d A)任意正奇数 B)任意负偶数 C)任意正偶数 D)任意负奇数 11.设变量已正确定义,则以下能正确计算f = n!的程序段是( )。d A) f=0; B) f=1;

for(i=1;i<=n;i++) f*=i; for(i=1;i>=2;i--) f*=i; C) f=1; D) f=1;

for(i=n;i>1;i++) f*=i; for(i=n;i>=2;i--) f*=i;

12.有以下程序 #include main()

{ char c1='1',c2='2';

c1=getchar(); c2=getchar(); putchar(c1); putchar(c2); }

当运行时输入:a<回车> 后,以下叙述正确的是( a)。

A)变量c1被赋予字符a,c2被赋予回车符 B)程序将等待用户输入第2个字符

C)变量c1被赋予字符a,c2中仍是原有字符2 D)变量c1被赋予字符a,c2中将无确定值

13. 若x,a,b均是int型变量,则执行表达式x=(a=1,b=2)后的结果为(b ) A.1 B.2 C.3 D.x无确定值

14. C语句x*=y+2;还可以写成( c ).

A.x=x*y+2 B.x=2+y*x C.x=x*(y+2) D.x=y+2*x

二、填空题