完整版c语言选择结构试题带答案Word下载.docx

上传人:b****1 文档编号:3629210 上传时间:2023-05-02 格式:DOCX 页数:24 大小:23.29KB
下载 相关 举报
完整版c语言选择结构试题带答案Word下载.docx_第1页
第1页 / 共24页
完整版c语言选择结构试题带答案Word下载.docx_第2页
第2页 / 共24页
完整版c语言选择结构试题带答案Word下载.docx_第3页
第3页 / 共24页
完整版c语言选择结构试题带答案Word下载.docx_第4页
第4页 / 共24页
完整版c语言选择结构试题带答案Word下载.docx_第5页
第5页 / 共24页
完整版c语言选择结构试题带答案Word下载.docx_第6页
第6页 / 共24页
完整版c语言选择结构试题带答案Word下载.docx_第7页
第7页 / 共24页
完整版c语言选择结构试题带答案Word下载.docx_第8页
第8页 / 共24页
完整版c语言选择结构试题带答案Word下载.docx_第9页
第9页 / 共24页
完整版c语言选择结构试题带答案Word下载.docx_第10页
第10页 / 共24页
完整版c语言选择结构试题带答案Word下载.docx_第11页
第11页 / 共24页
完整版c语言选择结构试题带答案Word下载.docx_第12页
第12页 / 共24页
完整版c语言选择结构试题带答案Word下载.docx_第13页
第13页 / 共24页
完整版c语言选择结构试题带答案Word下载.docx_第14页
第14页 / 共24页
完整版c语言选择结构试题带答案Word下载.docx_第15页
第15页 / 共24页
完整版c语言选择结构试题带答案Word下载.docx_第16页
第16页 / 共24页
完整版c语言选择结构试题带答案Word下载.docx_第17页
第17页 / 共24页
完整版c语言选择结构试题带答案Word下载.docx_第18页
第18页 / 共24页
完整版c语言选择结构试题带答案Word下载.docx_第19页
第19页 / 共24页
完整版c语言选择结构试题带答案Word下载.docx_第20页
第20页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

完整版c语言选择结构试题带答案Word下载.docx

《完整版c语言选择结构试题带答案Word下载.docx》由会员分享,可在线阅读,更多相关《完整版c语言选择结构试题带答案Word下载.docx(24页珍藏版)》请在冰点文库上搜索。

完整版c语言选择结构试题带答案Word下载.docx

6.两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是

main()

{intx;

scanf("

%d"

&

if(x++>

5)printf("

x);

elseprintf("

x--);

}

7和5B:

6和3C:

7和4D:

6和4

7.能表示x为偶数的表达式是

x%2==0B:

x%2==1C:

x%2D:

x%2!

=0

8.下面的程序段中共出现了几处语法错误?

inta,b;

a);

b=2a;

if(b>

0)printf("

%b"

b);

1B:

2C:

3D:

4

9.C语言中,逻辑“真”等价于

大于零的数B:

大于零的整数C:

非零的数D:

非零的整数

10.C语言的switch语句中,case后

只能为常量

B:

只能为常量或常量表达式

C:

可为常量及表达式或有确定值的变量及表达式

D:

可为任何量或表达式

11.已知inti=10;

表达式"

20-0<

=i<

=9"

的值是

19D:

20

12.设有inti,j,k;

则表达式i=1,j=2,k=3,i&

j&

k的值为

0

13.逻辑运算符两侧运算对象的数据类型

只能是0或1

只能是0或非0正数

只能是整型或字符型数据

可以是任何类型的数据

14.能正确表示“当x的取值在[1,10]和[200,210]范围内为真,否则为

假”的表达式是()

(x>

=1)&

(x<

=10)&

(x>

=200)&

=210)

=1)||(x<

=10)||(x>

=200)||(x<

15.已知x=43,ch=’a’,y=0;

则表达式(x>

=y&

ch<

’b’&

!

y)的值

是()

语法错误D:

16.执行下列语句后a的值为

inta=5,b=6,w=1,x=2,y=3,z=4;

(a=w>

x)&

(b=y>

z);

5B:

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

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

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

elseprintf(“$$$\n”);

有语法错误不能通过编译

可以通过编译但不能通过连接

***

$$$

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

{intm=5;

if(m++>

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

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

4B:

5C:

6D:

7

19.若运行时给变量x输入12,则以下程序的运行结果是()

{intx,y;

scanf(“%d”,&

y=x>

12?

x+10:

x-12;

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

0B:

22C:

12D:

10

20.若w=1,x=2,y=3,z=4,则表达式w<

x?

w:

y<

z?

y:

z的值是

3C:

21.设有inta=2,b;

则执行b=a&

1;

语句后,b的结果是

22.设有intm=1,n=2;

则++m==n的结果是

23.设有intn=2;

则++n+1==4的结果是

trueB:

falseC:

1D:

24.设有intn=2;

则++n+1==4,n的结果是

25.以下使i的运算结果为4的表达式是

inti=0,j=0;

(i=3,(j++)+i);

inti=1,j=0;

j=i=((i=3)*2);

inti=0,j=1;

(j==1)?

(i=1):

(i=3);

inti=1,j=1;

i+=j+=2;

26.当a=5,b=2时,表达式a==b的值为

2B:

0D:

5

27.若执行以下程序时从键盘上输入9,_______则输出结果是

{intn;

n);

if(n++<

10)printf("

n);

n--);

11B:

10C:

9D:

8

28.main()

{inta,b,d=241;

a=d/100%9;

b=(-1)&

(-1);

printf(“%d,%d”,a,b);

6,1B:

2,1C:

6,0D:

2,0

29.若有intx=10,y=20,z=30;

以下语句执行后x,y,z的值是()

if(x>

y)

z=x;

x=y;

y=z;

x=10,y=20,z=30

x=20,y=30,z=30

x=20,y=30,z=10

x=20,y=30,z=20

30.下列表达式中能表示a在0到100之间的是

a>

0&

a<

100B:

!

(a<

0||a>

100)C:

0<

100D:

(a>

100)

31.为了避免嵌套的if—else语句的二义性,C语言规定else总是与()

组成配对关系。

缩排位置相同的if

在其之前未配对的if

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

同一行上的if

32.已知:

intx,a,b;

下列选项中错误的if语句是

if(a=b)x++;

B:

if(a<

=b)x++;

if(a-b)x++;

D:

if(x)x++;

33.当把以下四个表达式用作if语句的控制表达式时,有一个选项与其它

三个选项含义不同,这个选项是()。

k%2B:

k%2==1C:

(k%2)!

=0D:

k%2==1

34.设有定义:

inta=2,b=3,c=4;

,则以下选项中值为0的表达式是()。

(!

a==1)&

(!

b==0)B:

aC:

a&

bD:

a||(b+b)&

(c-a)

35.以下程序段的输出结果是。

inta=10,b=50,c=30;

if(a>

a=b;

b=c;

c=a;

a=%db=%dc=%d\n"

a,b,c);

a=10b=50c=10B:

a=10b=30c=10C:

a=50b=30c=10D:

a=50b=30c=50

36.以下4个选项中,不能看作一条语句的是

{;

}B:

a=0,b=0,c=0;

C:

if(a>

0);

D:

if(b==0)m=1;

n=2;

以下题目为二级题

37.if语句的基本形式是:

if(表达式)语句,以下关于“表达式”值的叙述中正确的是

A)必须是逻辑值

B)必须是整数值

C)必须是正数

D)可以是任意合法的数值

38.有以下程序段

inti,n;

for(i=0;

i<

8;

i++)

{n=rand()%5;

switch(n)

{case1:

case3:

break;

case2:

case4:

continue;

case0:

exit(0);

以下关于程序段执行情况的叙述,正确的是

A)for循环语句固定执行8次

B)当产生的随机数n为4时结束循环操作

C)当产生的随机数n为1和2时不做任何操作

D)当产生的随机数n为0时结束程序运行

39.有以下程序

{intx=1,y=0;

if(!

x)y++;

elseif(x==0)

if(x)y+=2;

elsey+=3;

y);

程序运行后的输出结果是

A)3B)2C)1D)0

41.有以下程序:

main(){

inta=0,b=0,c=0,d=0;

if(a=1)b=1;

c=2;

elsed=3;

%d,%d,%d,%d"

a,b,c,d);

程序输出().

A)1,1,2,0B)0,0,0,3C)编译有错D)0,1,2,0

42.有以下程序:

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

switch(x)

{case1:

switch(y)

{

case0:

a++;

case1:

b++;

}

case2:

case3:

printf("

a=%d,b=%d\n"

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

43.若有定义intx,y;

并已正确给变量赋值,则以下选项中与表达式(x-y)?

(x++):

(y++)中的条件表达式(x-y)等价的是()

A)(x-y<

0||x-y>

0)

B)(x-y<

C)(x-y>

D)(x-y==0)

44.有以下程序:

intx=1,y=0;

if(!

x)y++;

elseif(x==0)

if(x)y+=2;

elsey+=3;

程序运行后的输出结果是()

A)3B)2C)1D)0

45.若有定义:

floatx=1.5;

inta=1,b=3,c=2;

则正确的switch语句是()

A)switch(a+b)

{case1:

printf("

*\n"

);

case2+1:

**\n"

B)switch((int)x);

case2:

C)switch(x);

{case1.0:

case2.0:

D)switch(a+b)

casec:

46.若变量已正确定义,在if(W)printf("

k);

中,以下不可替代W的是()。

A)a<

>

b+cB)ch=getchar()C)a==b+cD)a++

47.下列叙述中正确的是().

A)在switch语句中,不一定使用break语句

B)在switch语句中必须使用default

C)break语句必须与switch语句中的case配对使用

D)break语句只能用于switch语句

48.有如下嵌套的if语句

if(a<

b)

c)k=a;

elsek=c;

else

if(b<

c)k=b;

以下选项中与上述语句等价的语句是()

A)k=(a<

b)?

((b<

c)?

a:

b):

((b>

b:

c);

B)k=(a<

((a<

c):

((b<

C)k=(a<

b;

k=(b<

c;

D)k=(a<

k=(a<

49.设有宏定义:

#defineIsDIV(k,n)((k%n==1)?

1:

0)

且变量m已正确定义并赋值,则宏调用:

IsDIV(m,5)&

IsDIV(m,7)

为真时所要表达的是:

A)判断m是否能被5和7整除B)判断m被5和7整除是否都余1

C)判断m被5或者7整除是否余1D)判断m是否能被5或者7整除

50.有以下程序

inta=1,b=2,c=3,x;

x=(a^b)&

c;

程序运行结果是

A)3B)1C)2D)0

51.以下选项中,当x为大于1的奇数时,值为0的表达式是

A)x%2==0B)x/2C)x%2!

=0D)x%2==1

52.有以下程序

stido.h>

intx;

scanf("

if(x<

=3)else

if(x!

=10)printf("

程序运行时,输入的值在哪个范围才会有输出结果()

A)小于3的整数B)不大于10的整数

C)大于3或等于10的整数D)大于3且不等于10的整数

53.在以下给出的表达式中,与while(E)中的E不等价的表达式是()

A) (E>

0||E<

0)B)(E==0)C)(!

E==0)D) (E!

=0)

54.以下选项中与

if(a==1)a=b;

elsea++;

语句功能不同的switch语句是()

A)switch(a==1)

{case0:

a=b;

case1:

B)switch(a)

{case1:

default:

}

C)switch(a)

{default:

D)switch(a==1)

55.有以下程序

{

inta=1,b=2,c=3,d=0;

if(a==1&

b++==2)

if(b!

=2||c--!

=3)

printf("

%d,%d,%d\n"

a,b,c);

elseprintf("

elseprintf("

程序运行后的输出结果是()

A)1,3,2B)1,3,3C)1,2,3D) 3,2,1

56.下列条件语句中,输出结果与其他语句不同的是()

A)if(a!

=0)printf("

B)if(a==0)printf("

C)if(a==0)printf("

D)if(a)printf("

57.有以下程序

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

if(x>

if(y<

z)printf("

++z);

++y);

x++);

程序的运行结果是()

A)1B)41C)2D)331

58.若有以下程序

inta=1,b=2,c=3,d=4,r=0;

if(a!

=1);

elser=1;

if(b==2)r+=2;

else;

if(c!

=3)r+=3;

if(d==4)r+=4;

r);

则程序的输出结果是()

A)10B)7C)6D)3

59.有以下程序

inta;

a);

if(a++<

9)printf("

a--);

}

程序运行时从键盘输入9<

回车>

,则输出结果是

A)10B)11C)9D)8

60.设x=3,y=-4,z=6,写出表达式!

y)+(y!

=z)||(x+y)&

(y-z)的结果()

A、0B、1C、-1D、6

二、填空题

1、C语言中用_____表示逻辑值“真”,用_____表示逻辑值“假”

2、C语言中的关系运算符“!

=”的优先级_____“<

=”的优先级。

3、C语言中的逻辑运算符“&

”的优先级_____“||”的优先级。

4、C语言中的关系运算符"

=="

的优先级_____逻辑运算符“&

”的优先级

5、将下列数学式改写成C语言关系表达式或逻辑表达式

A)_______________

B)_______________

A)a=b或a<

cB)|x|>

4

6、请写出以下程序的输出结果是_____________

inta=100;

100)printf("

a>

100);

a<

=100);

7、请写出与以下表达式等价的表达式

A)!

0)B)!

8、若变量已正确定义,以下语句段的输出结果是______________

x=0;

y=2;

z=3

switch(x){

case0:

switch(y==2)

{case1:

*"

case2:

%"

case1:

switch(z)

{case1:

$"

#"

9、inta=3;

a+=(a<

1)?

printf(“%d”,a);

结果是__________

 

10、有以下程序

if(x>

15)printf("

x-5);

10)printf("

5)printf("

x+5);

若程序运行时从键盘输入12<

,则输出结果为__________。

11、以下程序运行后的输出结果是_________。

#include<

{intx=10,y=20,t=0;

if(x==y)t=x;

x=y;

y=t;

%d%d\n"

x,y);

12、以下程序的运行结果是_________。

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

switch(a>

switch(b<

{case1:

printf("

@"

"

switch(c==5)

{case0:

*"

case1:

#"

$"

default:

\n"

13、以下程序的运行结果i的值为_________.

charch='

$'

;

inti=1,j;

j=!

ch&

i++;

i);

14、以下程序用于判断a,b,c能否构成三角形,若能输出YES,若不能输出NO。

当a,b,c输入三角形三条边长时,确定a,b,c能构成三角形的条件是需要同时满足三条件:

a+

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

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2