C语言习题文档格式.docx

上传人:b****2 文档编号:15377850 上传时间:2022-10-29 格式:DOCX 页数:17 大小:21.90KB
下载 相关 举报
C语言习题文档格式.docx_第1页
第1页 / 共17页
C语言习题文档格式.docx_第2页
第2页 / 共17页
C语言习题文档格式.docx_第3页
第3页 / 共17页
C语言习题文档格式.docx_第4页
第4页 / 共17页
C语言习题文档格式.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

C语言习题文档格式.docx

《C语言习题文档格式.docx》由会员分享,可在线阅读,更多相关《C语言习题文档格式.docx(17页珍藏版)》请在冰豆网上搜索。

C语言习题文档格式.docx

d)后n的值为()。

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

结果是2。

#include<

stdio.h>

main()

{

inta=1,b=2,c=3,d=4,m=2,n=2;

(m=a>

b)&

(n=c>

d);

printf("

%d"

n);

}

//分析:

/*因为是&

运算,所以先看前段。

m=a>

b,=的优

先级小于>

,a>

b不成立,m=0;

在&

运算中,如果

出现一边为假的情况下,结果直接为假,后面的

语句不会去运算了。

*/

4.下面()是错误的if语句(设intx,a,b;

)c

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

B)if(a=<

b)x++;

C)if(a-b)x++;

D)if(x)x++;

5.以下程序片段()。

main()

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

if(x=y+z)

printf(“***”);

else

printf(“###”);

}

A)有语法错误,不能通过编译B)输出:

***

C)可以编译,但不能通过连接,所以不能运行D)输出:

###

答案是B

因为C语言中"

="

是赋值号;

if(x=y+z)是计算出y+z的值然后赋值给x,这个式子是永远成立的,所以会输出***;

如果说要改错的话,应该改为if(x==y+z),构成逻辑表达式后,才符合程序设计的初衷。

6.对下述程序,()是正确的判断。

{intx,y;

scanf(“%d,%d”,&

x,&

y);

if(x>

y)

x=y;

y=x;

x++;

y++;

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

A)有语法错误,不能通过编译B)若输入3和4,则输出4和5

C)若输入4和3,则输出3和4D)若输入4和3,则输出4和5

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

x?

w:

y<

z?

y:

z的值是()。

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

8.下述表达式中,()可以正确表示x≤0或x≥1的关系。

=0)B)x>

=1|x<

=0

C)x>

=1&

x<

=0D)(x>

=0)

9.下述程序的输出结果是()。

main()

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

if(++a>

0||++b>

0)

++c;

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

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

10.下述程序的输出结果是()。

{intx=-1,y=4,k;

k=x++<

=0&

!

(y--<

=0);

printf(“%d,%d,%d”,k,x,y);

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

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

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

switch(x){

case1:

switch(y){

case0:

a++;

break;

case1:

b++;

case2:

a++;

b++;

break;

case3:

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

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

12.下述程序的输出结果是()。

{inta,b,c;

intx=5,y=10;

a=(--y==x++)?

–y:

++x;

b=y++;

c=x;

A)6,9,7B)6,9,6C)7,9,6D)7,9,7

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

if(a<

b)

if(c<

d)x=1;

else

if(a<

c)

if(b<

d)x=2;

elsex=3;

elsex=6;

elsex=7;

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

14.在下面的条件语句中(其中S1和S2表示C语言语句),只有一个在功能上与其他三个语句不等价。

A)if(a)S1;

elseS2;

B)if(a==0)S2;

elseS1;

C)if(a!

=0)S1;

D)if(a==0)S1;

15.若inti=10;

执行下列程序后,变量i的正确结果是()。

switch(i){

case9:

i+=1;

case10:

case11:

default:

A)10B)11C)12D)13

16.若有说明语句inti=5,j=4,k=6;

floatf;

则执行f=(i<

j&

i<

k)?

i:

(j<

j:

k;

语句后,f的值为()。

A)4.0B)5.0C)6.0D)7.0

17.若有定义:

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

并有表达式:

①a%b,②a>

b>

c,③b&

c+1,④c+=1,则表达式值相等的是()。

A)①和②B)②和③C)①和③D)③和④

二.填空题

1.C语言提供6种关系运算符,按优先级高低它们分别是()。

2.C语言提供三种逻辑运算符,按优先级高低它们分别是()。

3.C语言对嵌套if语句的规定是:

else总是与()匹配。

4.将条件“y能被4整除但不能被100整除,或y能被400整除”写成逻辑表达式()。

5.设x,y,z均为int型变量;

写出描述“x,y和z中有两个为负数”的C语言表达式:

()

6.已知A=7.5,B=2,C=3.6,表达式A>

B&

C>

A||A<

C>

B的值是()。

7.有intx=3,y=-4,z=5;

则表达式(x&

y)==(x||z)的值为()。

8.若有x=1,y=2,z=3,则表达式(x<

y?

x:

y)==z++的值是()。

9.执行以下程序段后,a=,b=,c=。

intx=10,y=9;

inta,b,c;

a=(x--==y++)?

x--:

y++;

b=x++;

c=y;

三.判断题

1.if语句中的表达式不限于逻辑表达式,可以是任意的数值类型。

【】

2.switch语句可以用if语句完全代替。

3.switch语句的case表达式必须是常量表达式。

4.if语句,switch语句可以嵌套,而且嵌套的层数没有限制。

5.条件表达式可以取代if语句,或者用if语句取代条件表达式。

6.switch语句的各个case和default的出现次序不影响执行结果。

7.多个case可以执行相同的程序段。

8.内层break语句可以终止嵌套的switch,使最外层的switch结束。

9.switch语句的case分支可以使用{}复合语句,多个语句序列。

10.switch语句的表达式与case表达式的类型必须一致。

四.简答题

1.C语言中如何表示“真”和“假”?

系统如何判断一个量的“真”和“假”?

2.请将以下语句改成switch语句。

if((s>

0)&

(s<

=10))

if((s>

=3)&

=6))x=2;

elseif((s>

1)&

(s>

8))x=3;

elsex=1;

elsex=0;

五.程序阅读题

1.若运行时输入100↙,写出以下程序的运行结果。

{inta;

scanf(“%d”,&

a);

printf(“%s”,(a%2!

=0)?

”No”:

”Yes”);

2.写出以下程序的运行结果。

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

switch(a>

0){

switch(b<

printf(“@”);

printf(“!

”);

case0:

switch(c==5){

pritnf(“*”);

printf(“#”);

printf(“&

printf(“\n”);

六.程序判断改错题

1.下面程序将输入的大写字母改写成小写字母输出,其他字符不变;

请判断下面程序的正误,如果错误请改正过来。

{charc;

c=getchar();

c=(c>

=’A’||c<

=’Z’)?

c-32:

c+32;

printf(“%c”,c);

2.下面程序输入两个运算数x,y和一个运算符号op,然后输出该运算结果的值,例如输入3+5↙得到结果8;

{

floatx,y,r;

charop;

scanf(“%f%c%f”,&

op,&

switch(op){

case‘+’:

r=x+y;

case‘-’:

case‘*’:

case‘/’:

printf(“%f”,r);

C语言作业四

循环控制

1.下面程序段

intk=0;

while(k=0){printf(“%d”,k);

k--;

则下面描述中正确的是()。

A)while循环执行10次

B)循环是无限循环

C)循环题语句一次也不执行

D)循环体语句执行一次

3.以下程序段的循环次数是()。

for(i=2;

i==0;

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

A)无限次B)0次C)1次D)2次

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

{charc=

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

当前位置:首页 > 人文社科 > 文学研究

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

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