C语言顺序分支结构选择题.docx

上传人:b****5 文档编号:7712170 上传时间:2023-01-25 格式:DOCX 页数:23 大小:20.61KB
下载 相关 举报
C语言顺序分支结构选择题.docx_第1页
第1页 / 共23页
C语言顺序分支结构选择题.docx_第2页
第2页 / 共23页
C语言顺序分支结构选择题.docx_第3页
第3页 / 共23页
C语言顺序分支结构选择题.docx_第4页
第4页 / 共23页
C语言顺序分支结构选择题.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

C语言顺序分支结构选择题.docx

《C语言顺序分支结构选择题.docx》由会员分享,可在线阅读,更多相关《C语言顺序分支结构选择题.docx(23页珍藏版)》请在冰豆网上搜索。

C语言顺序分支结构选择题.docx

C语言顺序分支结构选择题

C语言_顺序分支结构

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

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

(ch+32):

ch

上面表达式的值是

A)AB)a

C)ZD)z

B

2.设a,b和c都是int型变量,且a=3,b=4,c=5,则下面的表达式中,

值为0的表达式是

A)'a'&&'b'B)a<=b

C)a||b+c&&b-cD)!

((a

c||1)

D

3.为表示关系x≥y≥z,应使用C语言表达式

A)(x>=y)&&(y>=z)B)(x>=y)AND(y>=z)

C)(x>=y>=z)D)(x>=y)||(y>=z)

A

4.执行下面程序段

intx=35;

charz='A';

intB;

B=((x=15)&&(z<'a'))

后,B的值为

A)0B)1

C)2D)3

B

5.表达式:

10!

=9的值是

A)trueB)非零值

C)0D)1

D

6.能正确表示a≥10或a≤0的关系表达式是

A)a>=10ora<=0B)a>=10|a<=0

C)a>=10||a<=0D)a>=10||a<=0

D

7.若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示

这一关系的表达式为

A)a<>0B)!

a

C)a=0D)a

D

8.设a=5,b=6,c=5,d=8,m=2,n=2,执行(m=a>b)&&(n=c>d)后n的值为

A)1B)2

C)3D)0

B

9.设a为整型变量,不能正确表达数学关系:

10

表达式是

A)10

C)a>10&&a<15D)!

(a<=10)&&!

(a>=15)

A

10.若有以下定义:

floatx;inta,b;则正确的switch语句是

A)switch(x)B)switch(x)

{case1.0:

printf("*\n");{case1,2:

printf("*\n");

case2.0:

printf("**\n")case3:

printf("**\n");

}}

C)switch(a+b)D)switch(a-b);

{case1:

printf("*\n"){case1:

printf("*\n");

case1-2:

printf("**n");case2:

printf("**\n");

}}

A

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

a

a:

c

a:

d的结果为

A)4B)3

C)2D)1

D

12.设x、y、z、t均为int型变量,则执行以下语句后,t的值为

x=y=z=1;

t=++x||++y&&++z;

A)不定值B)4

C)1D)0

C

13.语句:

printf("%d",(a=2)&&(b=-2));的输出结果是

A)无输出B)结果不确定

C)-1D)1

D

14.能正确表示a和b同时为正或同时为负的逻辑表达式是

A)(a>=0||b>=0)&&(a<0||b<0)

B)(a>=0&&b>=0)&&(a<0&&b<0)

C)(a+b>0&&a+b<=0)

D)a*b>0

D

15.有如下程序段

inta=14,b=15,x;

charc='A';

x=(a&&b)&&(c<'B');

执行该程序段后,x的值为

A)tureB)false

C)0D)1

D

16.为了避免嵌套的if-else语句的二义性,C语言规定else总是

与()组成配对关系。

A)缩排位置相同的ifB)在其之前未配对的if

C)在其之前未配对的最近的ifD)同一行上的if

C

17.选择出合法的判断a和b是否相等的if语句(设intx,a,b,c;)。

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

C)if(a!

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

C

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

if(x>y)

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

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

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

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

B

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

main()

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

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

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

}

A)有语法错误不能编译

B)能通过编译,但不能通过连接

C)输出****

D)输出####

C

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

main()

{intk=-3;

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

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

}

A)####B)****

C)####****D)有语法错误不能通过编译

D

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

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

B)if(x=y)&&(x!

=0)x+=y;

C)if(x!

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

D)if(x

B

22.以下条件表达式中能完全等价于条件表达式x的是()。

A)(x==0)B)(x!

=0)

C)(x==1)D)(x!

=1)

B

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

main()

{inta,b;

scanf("%d",&a);

b=a>15?

a+10:

a-10;

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

}

A)5B)25

C)15D)10

A

24.以下选项中,两个条件语句语义等价的是()。

A)if(a=2)printf("%d\n",a);B)if(a-2)printf("%d\n",a);

if(a==2)printf("%\n",a);if(a!

=2)printf("%\n",a);

C)if(a)printf("%d\n",a);D)if(a-2)printf("%d\n",a);

if(a==0)printf("%\n",a);if(a==2)printf("%\n",a);

B

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

main()

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

printf("%d\n",k

k:

c

c:

a);

}

A)4B)3

C)2D)1

D

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

intw=3,z=7,x=10;

printf("%d\n",x>10?

x+100:

x-10);

printf("%d\n",w++||z++);

printf("%d\n",w>z);

printf("%d\n",w&&z);

A)0B)1C)0D)0

1111

1100

1110

C

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

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

x+=y+=z;

printf("%d\n",x

y:

x);

A)1B)2

C)4D)不确定的值

A

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

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)a>bB)a

C)0>a>bD)0

D

29.请读程序:

#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=1B)a=1,b=1

C)a=1,b=0D)a=2,b=2

A

30.下面程序的输出结果是

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)-1B)0

C)1D)不确定的值

A

31.请读程序:

#include

main()

{charc1,c2,c3,c4;

intn;

longintx;

c1=c2=c3=c4='';

scanf("%ld",&x);

if(x>=1000)n=4;

elseif(x>=100)n=3;

elseif(x>=10)n=2;

elsen=1;

switch(n)

{case4:

c4=x%10+'0';x=x/10;

case3:

c3=x%10+'0';x=x/10;

case2:

c2=x%10+'0';x=x/10;

case1:

c1=x%10+'0';

}

printf("%c%c%c%c\n",c4,c3,c2,c1);

}

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

A)1234B)1234

C)4321D)432

C

32.下面程序的输出结果是

#include

main()

{inta=2,b=7,c=5;

switch(a>0)

{case1:

switch(b<0)

{case1:

printf("@");break;

case0:

printf("!

");break;

}

case0:

switch(c==5)

{case0:

printf("*");break;

case1:

printf("#");break;

default:

printf("%%");break;

}

default:

printf("&");

}printf("\n");

}

A)&B)!

#&

C)%%D)@*&

B

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

则输出结果是()。

main()

{intnum,i,j,k,place;

scanf("%d",&num);

if(num>99)

place=3;

elseif(num>9)

place=2;

else

place=1;

i=num/100;

j=(num-i*100)/10;

k=(num-i*100-j*10);

switch(place)

{case3:

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

break;

case2:

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

break;

case1:

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

}

}

A)123B)1,2,3

C)321D)3,2,1

C

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

则输出结果是()。

main()

{intt;

scanf("%d",&t);

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

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

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

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

elseprintf("E\n");

printf("OK\n");

}

A)BB)BOK

C)BD)B

OKC

D

E

OK

C

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

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)15B)25

C)20D)10

C

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

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,0B)0,0,2

C)0,2,0D)2,0,2

A

37.运行下面程序时,从键盘输入"1605",

则输出结果是()。

main()

{intt,h,m;

scanf("%d",&t);

h=(t/100)%12;

if(h==0)h=12;

printf("%d:

",h);

m=t%100;

if(m<10)printf("0");

printf("%d",m);

if(t<1200||t==2400)

printf("AM");

elseprintf("PM");

}

A)6:

05PMB)4:

05PM

C)16:

05AMD)12:

05AM

B

38、运行下面程序时,从键盘输入数据为"2,13,5",

则输出结果是()。

#include

main()

{inta,b,c;

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

switch(a)

{case1:

printf("%d\n",b+c);break;

case2:

printf("%d\n",b-c);break;

case3:

printf("%d\n",b*c);break;

case4:

{if(c!

=0){printf("%d\n",b/c);break;}

else{printf("error\n");break;}

}

defualt:

break;

}

}

A)10B)8

C)65D)error

B

39、下列程序的执行结果是()。

main()

{intx=2000,a=15,b=30,c=5,d=0;

if(a

if(b==25)

if(c)

x=123;

else

if(d)x=321;

x=-123;

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

}

A)-123B)321

C)123D)0

A

40、以下程序的执行结果是()。

#include"stdio.h"

main()

{inta=8,b=-7,c=5;

switch(a>0)

{case1:

switch(b<0)

{case1:

printf("@");break;

case2:

printf("!

");break;

}

case0:

switch(c!

=0)

{case0:

printf("*");break;

case1:

printf("#");break;

default:

printf("$");break;

}

default:

printf("&");

}

printf("\n");

}

A)*#$B)&

C)@#&D)@*&

C

41、以下程序的输出结果是

#include

main()

{

inta,b,d=241;

a=d/100%6;

b=1&&(-1);

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

}

A)6,1B)2,1

C)6,0D)2,0

B

42、有以下程序

#include

main()

{inta,b,c=246;

a=c/100%9;

b=(-1)&&(-1);

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

}

输出结果是

A)2,1B)3,2

C)4,3D)2,-1

A

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

k=8;

if(k<=0)

if(k==0)printf("####")

elseprintf("&&&&");

elseprintf("****");

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

A)####B)&&&&

C)****D)有语法错误,无输出结果

D

44、若执行下面的程序从键盘上输入5,则输出结果是

main()

{intx;

scanf("%d",&x);

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

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

}

A)7B)6

C)5D)4

B

45、当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)1B)2

C)3D)6

B

46、下面的程序片段所表示的数学函数关系是

┌-1(x<0)┌1(x<0)

││

A)y=┤0(x=0)B)y=┤-1(x=0)

││

└1(x>0)└0(x>0)

┌0(x<0)┌-1(x<0)

││

C)y=┤-1(x=0)D)y=┤1(x=0)

││

└1(x>0)└0(x>0)

y=-1;

if(x!

=0)

if(x>0)y=1;

elsey=0;

C

47、下面的程序

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

B)输出****。

C)可以通过编译,但是不能通过连接,因而不能运行。

D)输出####。

main()

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

if(x=y+z)printf("****");

elseprintf("####");}

D

48、以下程序的输出结果是

main()

{inta=100;

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

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

}

A)a<=100B)100

C)0D)1

D

49、假定所有变量均已正确说明,下列程序段运行后x的值是

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

if(!

a)x--;

elseif(b);

if(c)x=3;

elsex=4;

A)34B)4

C)35D)3

B

50、若已定义inta=25,b=14,c=19;以下三目运算符(?

:

)所构成的

语句的执行结果是

a++<=25&&b--<=2&&c—

?

printf("***a=%d,b=%d,c=%d\n",a,b,c):

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

A)***a=26,b=13,c=19B)***a=25,b=13,c=18

C)###a=26,b=13,c=19D)###a=25,b=13,c=18

C

51、与y=(x>0?

1:

x<0?

-1:

0);的功能相同的if语句是

A)if(x>0)y=1;B)if(x)

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

elsey=0;elseif(x<0)y=-1;

elsey=0;

C)y=-1;D)y=0;

if(x)if(x>=0)

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

elseif(x==0)y=0;elsey=-1;

elsey=-1;

A

52、有如下程序

main()

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

if(a

if(b<0)c=0;

elsec++;

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

}

该程序的输出结果是

A)0B)1

C)2D)3

C

53、假定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)4B)3

C)2D)1

D

54.选择出合法的if语句(设intx,y;)。

A)if(x!

=y)if(x>y)printf("x>y\n");

elseprintf("x

B)if(x!

=y)

if(x>y)printf("x>y\n")

  elseprintf("x

 elseprintf("x==y\n");

C)if(x!

=y)if(x>y)printf("x>y\n");

elseprintf("x

 elseprintf("x==y\n");

D)if(x!

=y)

if(x>y)printf("x>y\n");

elseprintf("x

 elseprintf("x==

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

当前位置:首页 > 高等教育 > 研究生入学考试

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

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