c语言第五章选择结构程序设计(习题册答案)_第1页
c语言第五章选择结构程序设计(习题册答案)_第2页
c语言第五章选择结构程序设计(习题册答案)_第3页
c语言第五章选择结构程序设计(习题册答案)_第4页
c语言第五章选择结构程序设计(习题册答案)_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、竭力为客户提供满意的产品和服务以人为本 诚信务实 勇于创新 乐于奉献第五章选择结构程序设计基础练习(A)一、填空题1、关系表达式的运算结果是逻辑值。c语言没有逻辑型数据,以1代表“真”,以代表“假”。2、逻辑运算符!是单目运算符,其结合性是由右结合性。3、C语言提供的三种逻辑运算符是&、|、!。其中优先级最高的为!,优先级最低的为|Q4、逻辑运算符两侧的运算对象不但可以是0和1,或者是0和非0的整数,也可以是任何类型的数据。系统最终以0和非0来判定它们属于“真”或“假”。5、设y为int型变量,请写出描述“y是偶数”的表达式(y%2=0)。6、设x,y,z均为int型变量,请写出描述“x或y中

2、有一个小于z”的表达式xz|yz7、条件2x3或x-10”的C语言表达式是x2&x=A)&(chbc的值是0。10、当a=5,b=4,c=2时,表达式ab!=c的值是1。11、已知A=7.5,B=2,C=3.6,表达式AB&CA|AB的值是Q。12、若a=6,b=4,c=2,则表达式!(a-b)+c-1&b+c/2的值是1。13、有intx,y,z;且x=3,y=-4,z=5,则表达式(x&y)=(x|z)的值为1。14、有intx,y,z;且x=3,y=-4,z=5,则以下表达式的值为1。!(xy)+(y!=z)|(x+y)&(y-z)15、有inta=3,b=4,c=5,x,y;,则以下表

3、达式的值为0。!(x=a)&(y=b)&016、if(!k)a=3;语句中的!k可以改写为k=0,使其功能不变。二、选择题1、逻辑运算符两侧运算对象的数据类型(D)。A)只能是0或1B)只能是0或非0正数C)只能是整型或字符型数据D)可以是任何类型的数据2、以下关于运算符优先顺序的描述中正确的是(C)。A)关系运算符算术运算符赋值运算符逻辑与运算符B)逻辑与运算符关系运算符算术运算符赋值运算符C)赋值运算符逻辑与运算符关系运算符算术运算符D)算术运算符关系运算符赋值运算符逻辑与运算符3、下列运算符中优先级最高的是(B)。A)B)+C)&D)!=4、为判断字符变量c的值不是数字也不是字母时,应采

4、用下述表达式(D)。A)c=57&c=90&c=122B)!(c=57&c=90&c=122)C)c=48&c=65&c=97&c=48&c=65&c=97&c=1)&(x=200)&(x=1)|(x=200)|(x=1)&(x=200)&(x=1)|(x=200)|(x=300)6、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是(D)。A)x&yB)x=yC) x|y+z&y-zD) !(x=y&chb)&(n=cd)后n的值为(B)。A) 1B)2C)3D)49、以下不正确的if语句形式是(C)。A)if(xy&x!=y);B) if(x=y)x+=y;C)

5、 if(x!=y)scanf(%d,&x)elsescanf(%d,&y);D) if(xy)z=x;x=y;y=z;A)x=10,y=20,z=30B)x=20,y=30,z=30C)x=20,y=30,z=10D)x=20,y=30,z=2011、以下if语句语法正确的是(B)。A) if(x0)printf(%f,x)elseprintf(-%f,B) B)if(x0)x=x+y;printf(%f,x);elseprintf(-%f,C) C)if(x0)x=x+y;printf(%fx);elseprintf(-%f,D) D)if(x0)x=x+y;printf(%f,x)else

6、printf(-%f,12、请阅读以下程序:main()inta=5,b=5,c=0;if(a=b+c)printf(n*);elseprintf($);以下程序(C)。A)有语法错不能通过编译B)可以通过编译但不能通过连接C)输出*D)输出$三、写出下列程序的运行结果1、若运行时输入:2回车,则以下程序的运行结果是2ndclasspostageis14P#includevoidmain(void)charClass;printf(Enter1for1stclasspostor2for2ndpost);scanf(%C,&Class);if(Class=1)printf(“1stclasspo

7、stageis19p);elseprintf(“2ndclasspostageis14P);2、若运行时输入:4.4回车,则以下程序的运行结果是SellingPrice(0.30)$5.72#includevoidmain(void)floatCostPrice,SellingPrice;printf(EnterCostPrice$:);scanf(%f”,&CostPrice);if(CostPrice=5)SellingPrice=CostPrice+CostPrice*0.25;printf(SellingPrice(0.25)$%6.2f”,SellingPrice);elseSell

8、ingPrice=CostPrice+CostPrice*0.30;printf(SellingPrice(0.30)$%6.2f”,SellingPrice);3、以下程序的运行结果是F。main()if(2*2=55) printf( elseprint f( %raTA) 4 B) 5C) 6二、根据程序的功能,将以下程序补充完整%d,m); m);D) 71、以下程序对输入的四个整数,按从小到大的顺序输出。请在 内填入正确内容。main()intt,a,b,c,d;printf(inputa,b,c,d:”)scanf(%d,%d,%d,%d&a,&b,&c,&d);if(ab)t=a

9、;a=b;b=t;if(ac)t=a;a=c;c=t;if(ad)t=a;a=d;d=t;if(bc)t=b;b=c;c=t;if(bd)t=b;b=d;d=t;if(cd)t=c;c=d;d=t;printf(%d,%d,%d,%d,a,b,c,d);三、编程:1、试编程判断输入的正整数是否既是5又是7的整倍数。若是,则输出yes;否则输出no。2、编制程序要求输入整数x、y和z,若x2+y2+z2大于1000,则输出x2+y2+z2千位以上的数字,否则输出三数之和。3、编写程序,输入三角型的三条边长,求其面积。注意:对于不合理的边长输入要输出数据错误的提示信息。1、参考答案main()in

10、tx;if(x%5=0&x%7=0)printf(“yes”);elseprintf(no);2、参考答案main()intx,y,z,a,b;scanf(%d%d%d,&x,&y,&z);a=x*x+y*y*z*z;if(a1000)b=a/1000;printf(%d;elseprintf(%d,x+y+z);3、参考答案#includemain()floata,b,c,s,area;scanf(f,%f,%f”,&a,&b,&c);if(a+bc&b+ca&a+cb)s=1.0/2*(a+b+c);area=sqrt(s*(s-a)*(s-b)*(s-c);printf(area=%7.

11、2f,area);elseprintf(bunenghuchengsanjiaoxin);第2讲基础练习(A)一、填空题1、在if语句中又包含一个或多个if语句称为if语句的嵌套。2、为了避免在嵌套的条件语句if-else中产生二义性,一C语言规定:else子句总是与其之前最近的未配对的if配对。如果if与else数目不一样,为实现设计者的企图,可以加花括号关系。3、条件运算符是C语言中唯一的一个三目运算符,其结合性为从右至左。4、假设条件表达式的格式为:表达式1?表达式2:表达式若表达式2和表达式3的类型不同,此时条件表达式的值的类型为二者中较高的类型5、在switch语句中,switch后

12、面括弧内的“表达式”,可以为任何类型。6、若a=1,b=2,则表达式ab?a:b+1的值是3。7、若w=l、x=2、y=3、z=4,则条件表达式wx?w:yz?y:z的值是1。8、若有以下if语句:if(ab)min=a;elsemin=b;可用条件运算符来处理的等价式子为min=(ab)?a:b;。9、若x=1,y=2,z=3,则表达式(xb)c=1;elseif(a=b)c=0;elsec=-1;printf(%d,c);2、 main()200inta,b,c;ints,w,t;s=w=t=0;a=-1;b=3;c=3;if(c0)s=a+b;if(a0)if(c0)w=a-b;else

13、t=c;printf(%d%d%d,s,w,t);3、 switch(grade)caseA:printf(一“8n”caseB,:printf(一“n0caseC:printf(一“n0);););caseD:printf(n”;60default:printf(e什京!60-69 60 error!若grade的值为C则输出结果是能力提高(B)一、写出下列程序的运行结果1、 #include551voidmain(void)intx,y=1,z;if(y!=0)x=5;printf(n,x);if(y=0)x=4;elsex=5;printf(n,x);x=1;if(y0)x=4;else

14、x=5;printf(n,x);2、 #include4-2404-2voidmain(void)intx,y=-2,z;if(z=y)0)x=4;elseif(y=0)x=5;elsex=6;printf(n,x,z);if(z=(y=0)x=5;x=4;printf(n,x,z);if(x=z=y)x=4;printf(n,x,z);3、 #includea=2,b=1main()intx=1,y=0,a=0,b=0;switch(x)case1:switch(y)case0:a+;break;case 1: b+;break;case 2:a+;b+;break;printf(a=%d,b=%d,a,b);二、根据程序的功能,将以下程序补充完整以下程序计算某年某月有几天。其中判别闰年的条件是:能被4整除但不能被100整除的年是闰年,能被400整除的年也是闰年。请在内填入正确内容。main()intyy,mm,len;printf(year,month=);scanf(%d%d,&yy,&mm);switch(mm)case1:case 3:case5:case 7:case

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论