第5章if语句练习题

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

第五章if语句练习题

1.以下不正确的if语句形式是______

A)if(x>y&&x!=y);

B)if(x= =y)x+=y;

C)if(x!=y)scanf(“%d”,&x),else scanf(“%d,&y);

D)if(x

2.以下运算符中优先级最低的是(1),优先级最高的是(2)

A) ?: B)&& C)+ D)! =

3.已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是_____ if(x>y)

z=x;x=y;y=z;

A)x=10,y=20,z=30 B)x=20,y=30,z=30

C)x=20,y=30,z=10 D)x=20,y=30,z=20

4.以下if语句语法正确的是_____

A)if(x>0)

printf(“%f”,x)

else printf(“%f”,-x);

B)if(x>0)

{x=x+y;printf(“%f’,x);}

else printf(“%f”,-x);

C)if(x>0) {x=x+y;printf(“%f”,x);}

else printf(“%f”,-x);

D)if(x>0)

{x=x+y;printf(“%f,x);}

else printf(“%f”,-x);

5.请阅读以下程序:

main( )

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

if(a=b+c)printf(“* * *\n”);

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

以上程序______

A)有语法错不能通过编译 B)可以通过编译但不能通过连接

C)输出* * * D)输出$ $ $

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

main( )

{int m=5;

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

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

A) 4 B) 5 C) 6 D) 7

7.当a=1,b=3,c=5,d=4时,执行完下面一段程序后x的值是______ if(a

if(c

else

if(a

if(b

else x=3;

else x=6;

else x=7;

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

8. 有一个函数关系见下表:

下面程序段中能正确表示上面关系的是( ) A) y=x+1;

if(x>=0)

if(x==0)y=x;

else y=x-1;

b) y=x-1;

if(x!=0)

if(x>0)y=x+1; else y=x;

c) if(x<=0)

if(x<0)y=x-1;

else y=x;

else y=x+1;

d)y=x;

if(x<=0)

if(x<0)y=x-1;

else y=x+1;

9.以下程序的输出结果是______

main( )

{int a=100,x=10,y=20,okl=5,ok2=0;

if(x

if(!ok1)

a=1;

else

if(ok2) a=10;

a=-1;

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

A 1

B 0

C -1

D 值不确定

10.以下程序输出结果是_______

main( )

{int x=2,y=-1,z=2;

if(x

if(y<0) z=0;

else z+=1;

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

A.3

B.2

C.1

D.0

11.为避免在嵌套的条件语句if-else中产生二义性,C语言规定:else子句总是与___配对.

A.缩排位置相同的if

B.其之前最近的if

C.其之后最近的if

D.同一行上的if

12.以下不正确的语句为______

A.if(x>y);

B.if(x=y)&&(x! =0) x+=y;

C,if(x! =y)scanf(“%d”,&x);else scanf(“%d”,&y);

D.if(x

12.阅读以下程序

#include

main( )

{float a, b;

scanf(“%f”,&a); if(a<0.0)b=0.0;

else if((a<0.5)&&(a!=2.0))b=1.0/(a+2.0);

else if(a<10.0)b=1.0/a;

else b=10.0;

printf(“%f\n”,b);}

若运行时输入2.0<回车>,则上面程序的输出结果是_____

A)0.000000 B)0.500000 C)1.000000 D)0.250000

13.若运行时输入:16<回车>,则以下程序的运行结果是( )

#include

main( )

{int year;

printf(“Input you year:”);

scanf(“%d”,&year);

if(year>=18)

printf(“you$4.5yuan/xiaoshi”);

else printf(“your$3.0yuan/xiaoshi”);}

14.若运行时输入:2<回车>,则以下程序的运行结果是( )

#include

main( )

{char class;

printf(“enter 1for 1stclass post or 2 for 2nd post”);

相关文档
最新文档