C程序设计第4章选择结构复习题及答案

  • 格式:docx
  • 大小:11.96 KB
  • 文档页数:3

下载文档原格式

  / 3
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

.选择题

1. 已有定义语句: int x=3,y=4,z=5;, 则值为 0 的表达式是: ( A )

a)

x>y++ b) x<=++y c) x !=y+z>y-z d) y%z>=y-z 3. x 为奇数时值为“真” ,x 为偶数时值为“假”的表达式是:

(C )

a) !(x%2==1) b) x%2==0 c) x%2 d) !(x%2) 6. 已有定义语句: int x=6,y=4,z=5;, 执行以下语句后,能正确表示 x,y,z 值的选项是: ( C ) z=x;x=y;y=z;

a)

x=4,y=5,z=6 b)

x=4,y=6,z=6 c)

x=4,y=5,z=5 d)

x=5,y=6,z=4 7. 以下程序的运行结果是: ( D )

main()

{ int i=0;

if(i==0) printf( “** ”);

else printf( “$”); printf( “*\n ” );

}

a) *

b) $* c) ** d) *** 8. 若变量 a,b,c 都为整型,且 a=1、 b=15、 c=0 ,则表达式 a==b>c 的值是( D )

a) 0

b) 非零 c) “真” d) 1 9. a 为 0 时,值为“真”的表达式是( D )

a) a b) !(++a) c) a=0 d) a==0

12. 有以下程序:

main()

{ int a=2,b=1,c=2;

if(b

if(b<0) c=0,

c++;b++;

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

程序的输出结果是: ( C )

a) b=1,c=2

c) b=2,c=2

13. 有以下程序: main() { int

n;

scanf( “%d ” ,&n);

if(n++<5) printf( “%X\n ” ,n); else printf( “%X\n ” ,n--); 若执行程序时从键盘上输入 9,则输出结果是: ( B )

14. 有以下程序:

选择结构程序设计复习题

if(x

a) 11

b) A c) 9 d) 8

main()

{ int m=5;

if(++m>5)

if(m++>5) printf( “%d\n ”,m+5);

else printf

(

“%d\n ”,m--);

else printf( “%d\n ”,--m);

}

程序的输出结果是: ( D)

a) 8 b) 5 c) 10 d) 12

17. 当a=1、b=3、c=5、d=4 时,执行下面一段程序:if(a

if(c

else

if(a

if(b

else x=3;

else x=6;

else x=7;

以上程序段运行后,x 的值是:( B)

a) 1 b) 2 c) 3 d) 6

19. 以下程序的输出结果是: ( C)

main()

{ int a=5,b=4,c=6,d;

printf( “%d\n ”,d=a>b ?(a>c ? a:c) : (b));

}

a) 5 b) 4 c) 6 d) 不确定

20. 若有定义语句:int x=3,y=2,z=1; 则以下表达式的值是:( C ) z*=(x>y ? ++x :y++)

a) 0 b) 1 c) 4 d) 3

21. 有以下程序:

main()

{ int a=15,b=21,m=0;

switch(a%3)

{ case 0: m++;break;

case 1: m++; switch(b%2) { default: m++;

case 0: m++;break;

}

}

printf( “%d\n ”,m);

}

程序的输出结果是: ( A )

a) 1 b) 2 c) 3 d) 4 二.填空题

1.设y是int型变量,请写出当y是奇数时值为1的关系表达式__y%2或y%2==0 或y%2!=0_.

2.表示“整数x的绝对值大于5”时值为“真”的C语言表达式是x>5||x<-5 .

3.若x为int类型,请以最简单的形式写岀与!x等价的C语言表达式___x==0__.

6.以下程序的运行结果是__0—.

main()

{ int a=0,b=0,c;

if(a>b) c=1;

else if(a=b) c=0;

else c=-1;

printf( %d\n ”,c);

}

8.若从键盘上输入3和4,执行以下程序后的输出结果是__36___.

main()

{ int a=0,b=0,s=0;

scanf( %d%d ",&a,&b);

if(a

printf( %d\n ”,s);

}

}

9.以下程序的运行结果是_!_.

main()

{ int a=0,b=4,c=5;

switch(a==0)

{case 1: switch(b<0)

{case 1: printf( @ ”); break;

case 0: printf( break;

}

case 0: switch(c==5)

{case 0: printf( *"); break;

case 1: printf( #"); break;

defa ult: printf( % ”);

} break;

defa ult: printf( & ”);