c语言第4章 选择结构程序设计习题答案.docx
《c语言第4章 选择结构程序设计习题答案.docx》由会员分享,可在线阅读,更多相关《c语言第4章 选择结构程序设计习题答案.docx(4页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、习题(P111)第 4 章 选择结构程序设计4.2 C 语言中如何表示“真”和“假”?系统如何判断一个量的“真”和“假”?答:C 语言中用 1 表示真,0 表示假;系统按照“非 0 为真,0 为假”判断一个逻辑量的真假。4.3 写出下面各逻辑表达式的值。设 a=3,b=4,c=5。(1)a+bc&b=c(2)a|b+c&b-c(3)!(ab)&!c|1(4)!(x=a)&(y=b)&0(5)!(a+b)+c-1&b+c/2 解:该题在求解过程中注意:一、优先级。逻辑运算符(&和|)低于算术运算符和关系运算符而高于赋值运算符,在逻辑运算符中, 逻辑非最高,逻辑与其次,逻辑或最低;二、逻辑表达式的
2、求值规则。(P94)所以得以上表达式的值分别为:(1)0(2)1(3)1(4)0(5)14.4 有 3 个整数 a、b、c,由键盘输入,输出其中最大的数。分析:这是一个规模较小的求最值的算法,习题 1.6 用函数的方法实现。该题不用函数调用实现,但方法类似。法一:先求前两个数的最值,再用前两个数的最值和第三个数比较即得结果。法二:先假设第一个数是最值,再依次和第二、第三个数比较得结果。其中都要用到单分支或双分支选择结构语句。main()int a,b,c,max;/*定义 4 个整型变量,其中 a,b,c 存原始数据,max 存最值*/printf(ninput the value of a,
3、b,c:); /*提示输入*/scanf(%d%d%d,&a,&b,&c); /*格式符之间无分隔符,输入时可以以空格、回车、跳格分隔*/if(ab)max=a; elsemax=b; if(maxc)max=c;printf(nmax=%dn,max);参考程序如下: 法一:main()int a,b,c,max;printf(ninput the value of a,b,c:); scanf(%d%d%d,&a,&b,&c); max=a;if(maxb)max=b; if(maxc)max=c; printf(nmax=%dn,max);法二:4.6 有一个函数:写一段程序,输入 x,
4、输出 y 的值。分析:这是一个典型的分断函数的求解应用。运行时从键盘输入 x 的值,再判断其范围根据表达式计算y 值并输出即可。该题的关键是如何判断 x 值的范围,需要用到嵌套的分支选择语句。具体方法比较多,可以先确定任意一个范围,在确定其余范围时可以用到前一条件不满足的隐含条件。注意嵌套语句中else 和if 的配对关系。另外仍然要注意C 语言表达式和数学表达式的区别,乘号(*)在C 语言表达式中一定不能省略。参考程序如下:#include main() float x,y; printf(input x:);scanf(%f,&x); if(x1)y=x;else if(x=1*/ y=2
5、*x-1;else/* 前两个条件都不满足,则隐含条件为 x=10*/ y=3*x-11;printf(y=%fn,y);else y=3*x-11;elsey=2*x-1;elsey=x;对上述参考答案中加粗部分语句的改写方法:if(x=10)if(x=1 & x=10)if(x1) y=x;y=3*x-11;y=2*x-1;elsey=2*x-1;elseif (x10)y=3*x-11;思考:还有其他的改写方法吗?请动手写一写。4.8 给出一百分制成绩,要求输出成绩等级A、B、C、D、E。90 以上为A,8089 分为B,7079 分为C,6069 分为D,60 分以下为E。分析:该题是
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c语言第4章 选择结构程序设计习题答案 语言 选择 结构 程序设计 习题 答案
限制150内