第5章 条件判断语句.docx

上传人:b****8 文档编号:9851545 上传时间:2023-02-07 格式:DOCX 页数:27 大小:26.33KB
下载 相关 举报
第5章 条件判断语句.docx_第1页
第1页 / 共27页
第5章 条件判断语句.docx_第2页
第2页 / 共27页
第5章 条件判断语句.docx_第3页
第3页 / 共27页
第5章 条件判断语句.docx_第4页
第4页 / 共27页
第5章 条件判断语句.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

第5章 条件判断语句.docx

《第5章 条件判断语句.docx》由会员分享,可在线阅读,更多相关《第5章 条件判断语句.docx(27页珍藏版)》请在冰豆网上搜索。

第5章 条件判断语句.docx

第5章条件判断语句

单项选择题

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

main() 

{  int i=0; 

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

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

A.***

B.*

C. $*

D. **

0502.若有定义语句:

 int x=3,y=2,z=1; 则以下表达式的值是( )。

  z*=(x>y ?

 ++x :

y++)  

A.4

B.0

C.1

D.3

0503.执行下列程序段后的输出结果是( )。

intx=1,y=1,z=1;

x+=y+=z;

printf("%d\n",x

y:

x);

A.3

B.4

C.5

D.2

0504.设ch是char型变量,其值为A,且有下面的表达式:

ch=(ch>='A'&&ch<='Z')?

(ch+32):

ch表达式的值是( )。

A.a

B.A

C.Z

D.z

0505.设a,b和c都是int型变量,且a=3,b=4,c=5,则下面的表达式中,值为0的表达式是( )。

A.!

((a

c||1)

B.a||b+c&&b-c

C.a<=b

D.'a'&&'b'

0506.有以下程序的输出结果是( )。

main()

{

intn=0,m=1,x=2;

if(!

n)x-=1;

if(m)x-=2;

if(x)x-=3;

printf("%d\n",x);

}

A.-4

B.-5

C.-3

D.3

0507.若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为( )。

A.a

B.!

a

C.a<>0

D.a=0

0508.设a=1,b=2,c=3,d=4,则表达式:

a

a:

c

a:

d的结果为( )。

A.1

B.3

C.4

D.2

0509.为了避免嵌套的if-else语句的二义性,C语言规定else总是与( )组成配对关系。

A.在其之前未配对的最近的if

B.缩排位置相同的if

C.在其之前未配对的if

D.同一行上的if

0510.下面四个选项中,判断a和b是否相等的if语句(设intx,a,b,c;)为( )。

A.if(a!

=b)x++;

B.if(a=b)x++;

C.if(a=

D.if(a=>b)x++;

0511.已知intx=10,y=20,z=30,则执行

if(x>y)

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

语句后,x、y、z的值是( )。

A.x=20,y=30,z=30

B.x=10,y=20,z=30

C.x=20,y=30,z=10

D.x=20,y=30,z=20

0512.执行下面程序的输出结果是( )。

main()

{inta=5,b=0,c=0;

if(a=a+b)printf("****\n");

elseprintf("####\n");

}

A.输出****

B.有语法错误不能编译

C.能通过编译,但不能通过连接

D.输出####

0513.运行下面程序后,输出是( )。

main()

{intk=-3;

if(k<=0)printf("****\n")

elseprintf("####\n");

}

A.有语法错误不能通过编译

B.####

C.****

D.####****

0514.以下不正确的if语句是( )。

A.if(x=y)&&(x!

=0)x+=y;

B.if(x>y)printf("%d\n",x);

C.if(x!

=y)scanf("%d",&x);elsescanf("%d",&y);

D.if(x

0515.若运行下面程序时,给变量a输入15,则输出结果是( )。

main()

{inta,b;

scanf("%d",&a);

b=a>15?

a+10:

a-10;

printf("%d\n",b);

}

A.5

B.25

C.15

D.10

0516.以下程序段运行结果是( )。

intx=1,y=1,z=-1;

x+=y+=z;

printf("%d\n",x

y:

x);

A.1

B.2

C.4

D.不确定的值

0517.在执行以下程序时,为了使输出结果为:

t=4则给a和b

输入的值应满足的条件是( )。

main()

{ints,t,a,b;

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

s=1;t=1;

if(a<0)s=s+1;

if(a>b)t=s+t;

elseif(a==b)t=5;

elset=2*s;

printf("t=%d\n",t);

}

A.0

B.a

C.a>b

D.0>a>b

0518.请读程序:

#include

main()

{intx=1,y=0,a=0,b=0;

switch(x)

{case1:

switch(y)

{case0:

a++;break;

case1:

b++;break;

}

case2:

a++;b++;break;

}

printf("a=%d,b=%d\n",a,b);

}

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

A.a=2,b=1

B.a=1,b=1

C.a=1,b=0

D.a=2,b=2

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

main()

{intx=100,a=10,b=20,ok1=5,ok2=0;

if(a

if(b!

=15)

if(!

ok1)

x=1;

else

if(ok2)x=10;

x=-1;

printf("%d\n",x);

}

A.-1

B.0

C.1

D.不确定的值

0520.运行下面程序时,若从键盘输入数据为"86",

则输出结果是( )。

main()

{intt;

scanf("%d",&t);

if(t>=90)printf("A");

elseif(t>=80)printf("B");

elseif(t>=70)printf("C");

elseif(t>=60)printf("D");

elseprintf("E\n");

printf("OK\n");

}

A.BOK

B.B

C.C

D.E

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

main()

{inta=0,b=1,c=0,d=20,x;

if(a)d=d-10;

elseif(!

b)

if(!

c)x=15;

elsex=25;

printf("%d\n",d);

}

A.20

B.15

C.25

D.10

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

main()

{inta=-1,b=3,c=3;

ints=0,w=0,t=0;

if(c>0)s=a+b;

if(a<=0)

{if(b>0)

if(c<=0)w=a-b;

}

elseif(c>0)w=a-b;

elset=c;

printf("%d,%d,%d\n",s,w,t);

}

A.2,0,0

B.0,0,2

C.0,2,0

D.2,0,2

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

main()

{intx;

scanf("%d",&x);

if(x++>5)printf("%d\n",x);

elseprintf("%d\n",x--);

}

A.6

B.7

C.5

D.4

0524.以下程序的输出结果是( )。

main()

{inta=100;

if(a>100)printf("%d\n",a>100);

elseprintf("%d\n",a<=100);

}

A.1

B.a<=100

C.100

D.0

0525.假定所有变量均已正确说明,下列程序段运行后x的值是( )。

a=b=c=0;x=35;

if(!

a)x--;

elseif(b);

if(c)x=3;

elsex=4;

A.4

B.34

C.35

D.3

0526.有如下程序

main()

{inta=2,b=-1,c=2;

if(a

if(b<0)c=0;

elsec++;

printf("%d\n",c);

}

该程序的输出结果是( )。

A.2

B.0

C.1

D.3

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

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

m=(w

w:

x;m=(m

m:

y;m=(m

m:

z;

则该程序段执行后,m的值是( )。

A.1

B.2

C.3

D.4

0528.下列程序的执行结果是( )。

main()

{intx=0,y=1,z=0;

if(x=z=y)

x=3;

printf("%d,%d\n",x,z);

}

A.3,1

B.3,0

C.0,0

D.0,1

0529.C语言程序的三种基本程序是( )。

A.顺序结构,选择结构,循环结构

B.递归结构,循环结构,转移结构

C.嵌套结构,递归结构,顺序结构

D.循环结构,转移结构,顺序结构

0530.执行下面语句后的输出结果为( )。

inti=-1;

if(i<=0)

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

i=2;

else

printf(“%%%%\n”);

A.有语法错误。

不能正确执

B.****

C.%%

D.%%%%c

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

 

  k=--3;

if(k<=0)

printf(“####”);

else

printf(“&&&&”);  

上面程序片段的输出结果是( )。

A.有语法错误,无输出结果

B.####

C.&&&&

D.####&&&&

0532.下列关于switch语句和break语句的结论中,只有( )是正确的。

A.在switch语句中可以根据需要使用或不使用break语句

B.break语句是switch语句的一部分

C.在switch语句中必须使用break语句

D.以上三个结论有两个是正确的

0533.若要求在if后一对括号中表示a不等于0时,条件成立,则能正确表示这一关系的表达式为( )。

A.a

B.a=0

C.!

a

D.a!

=1

0534.若执行下面的程序时从键盘上输入5,则输出是( )。

main()

{intx;

scanf(“%d0”,x);

if(++x>5)

printf(“%d”,x);

else

printf(“%d”,x--);

}

A.6

B.5

C.7

D.4

0535.若执行下面的程序时,从键盘上输入5和2,则输出结果是( )。

main()

{inta,b,s;

scanf(“%d%d”,&a,&b);

s=a;

if(a

s=b;

s=s*s;

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

}

A.25

B.4

C.10

D.20

0536.下面的程序运行结果为( )。

  main()

{intx=0,y=0,z=0;

if(x=y+z)

printf(“****”);

else

printf(“####”);

}

A.####

B.语法有错误,不能编译

C.***

D.能编译,不能连接

0537.假设inta,b,c,w;且a,b均已经被赋值,同时满足条件a不等于b,执行以下程序后要把c的值赋值给w,从键盘上输入c的值不应取的范围是( )。

scanf(“%d”,&c);

w=b;

if(w<=c)

printf(“%d”,w);

else

w=c;

A.b<=c

B.b>c

C.c>a&&c

D.c

0538.设ch是char型变量,其值为A,且有下面的表达式:

ch=(ch>='A'&&ch<='Z')?

(ch+32):

ch

上面表达式的值是( )。

A.a

B.A

C.Z

D.z

0539.已知intx=10,y=20,z=30;则执行

if(x>y)

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

语句后,x、y、z的值是( )。

A.x=20,y=30,z=30

B.x=10,y=20,z=30

C.x=20,y=30,z=10

D.x=20,y=30,z=20

0540.执行下面程序的输出结果是( )。

main()

{inta=5,b=0,c=0;

if(a=a+b)printf("****\n");

elseprintf("####\n");

}

A.输出****

B.有语法错误不能编译

C.能通过编译,但不能通过连接

D.输出####

0541.若运行下面程序时,给变量a输入15,则输出结果是( )。

main()

{inta,b;

scanf("%d",&a);

b=a>15?

a+10:

a-10;

printf("%d\n",b);

}

A.5

B.15

C.25

D.10

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

main()

{inta=0,b=1,c=0,d=20,x;

if(a)d=d-10;

elseif(!

b)

if(!

c)x=15;

elsex=25;

printf("%d\n",d);

}

A.20

B.15

C.25

D.10

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

main()

{intx;

scanf("%d",&x);

if(x++>5)printf("%d\n",x);

elseprintf("%d\n",x--);

}

A.6

B.7

C.5

D.4

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

if(a

if(c

else

if(a

if(b

elsex=3;

elsex=6;

elsex=7;

A.2

B.1

C.3

D.6

0545.下列程序段运行后x的值是( )。

a=b=0;c=1;x=35;

if(!

a)x--;

elseif(b);

if(c)x=3;

elsex=4;

A.3

B.4

C.34

D.35

0546.执行下面程序时,若从键盘输入"2",则程序的

运行结果是( )。

#include

main()

{intj,k;charcp;

cp=getchar();

if(cp>='0'&&cp<='9')

k=cp-'0';

elseif(cp>='a'&&cp<='f')

k=cp-'a'+10;

elsek=cp-'A'+10;

printf("%d\n",k);

}

A.2

B.1

C.4

D.10

0547.已知intx=10,y=20,z=30,则执行

if(x>y)

{z=x;x=y;y=z;}

语句后,x、y、z的值是( )。

A.x=20,y=30,z=10

B.x=10,y=20,z=30

C.x=20,y=30,z=30

D.x=20,y=30,z=20

0548.以下4个选项中,不能看作一条语句的是( )。

A.if(b==0)m=1;n=2;

B.{;}

C.inta=0,b=0,c=0;

D.if(a>0);

0549.下列条件语句中,功能与其他语句不同的是( )。

A.if(a==0)printf("%d\n",x);elseprintf("%d\n",y);

B.if(a!

=0)printf("%d\n",x);elseprintf("%d\n",y);

C.if(a==0)printf("%d\n",y);elseprintf("%d\n",x);

D.if(a)printf("%d\n",x);elseprintf("%d\n",y);

0550.C语言的if语句中,用以决定分支流程的( )。

A.可用任意类型表达式

B.只能用逻辑表达式

C.只能用关系表达式

D.只能用逻辑表达式或关系表达式

读程序题

0551.#include 

main() 

{

 int a=2,b=1,c=2;    if(b

     c++;b++; 

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

输出结果:

b=2,c=2

0552.#include 

main() 

 int n; 

 scanf(“%d”,&n); 

 if(n++<5)  printf(“%X\n”,n);    else  printf(“%X\n”,n--); 

若执行程序时从键盘上输入9,则输出结果是:

( )

输出结果:

A

0553.#include 

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); 

输出结果:

12

0554.#include 

main() 

{  

float x=2.0,y;    if(x<0.0)  y=0.0; 

else  if(x<5.0)&&(!

x))  y=1.0/(x+2.0);    

else  if(x<10.0)  y=1.0/x;    

else  y=1.0;    printf(“%f\n”,y); 

}

输出结果:

0.500000

0555.#include

main() 

 int s,t,a=1,b=2; 

   scanf(“%d,%d”,&a,&b);    s=1;t=1;    if(a>0)  s=s+1;   

 if(a>b)  t=s+t;    else  if(a==b)  t=5; 

else  t=2*s;    printf(“t=%d\n”,t); 

输出结果:

 t=4

0556.#include 

main() 

{  

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

  printf(“%d\n”,d=a>b ?

(a>c ?

 a:

c) :

 (b)); 

}

输出结果:

6

0557.#include

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); 

输出结果:

1

0558.#include

main()

{

inta=5,b=0,c=0;

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

elseprintf(“$$$\n”);

}

输出结果:

$$$

0559.#include 

main()

{

intx=2,y=-1,z=2;

if(x

if(y<0)z=0;

elsez+=1;

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

}

输出结果:

2

0560.#include 

main()

{

intk=4,a=3,b=2,c=1;

printf(“\n%d\n”,k

k:

c

c:

a);

}

输出结果:

1

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 文学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1