c语言第4章 选择结构程序设计习题答案.pdf

c语言第4章 选择结构程序设计习题答案.pdf

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

c语言第4章选择结构程序设计习题答案--第1页

第4章选择结构程序设计

习题(P111)

4.2C语言中如何表示“真”和“假”?系统如何判断一个量的“真”和“假”?

答:C语言中用1表示真,0表示假;系统按照“非0为真,0为假”判断一个逻辑量的真假。

4.3写出下面各逻辑表达式的值。设a=3,b=4,c=5。

(1)a+bcb==c(2)a||b+cb-c(3)!(ab)!c||1

(4)!(x=a)(y=b)0(5)!(a+b)+c-1b+c/2

解:该题在求解过程中注意:

一、优先级。逻辑运算符(和||)低于算术运算符和关系运算符而高于赋值运算符,在逻辑运算符中,

逻辑非最高,逻辑与其次,逻辑或最低;

二、逻辑表达式的求值规则。(P94)

所以得以上表达式的值分别为:(1)0(2)1(3)1(4)0(5)1

4.4有3个整数a、b、c,由键盘输入,输出其中最大的数。

分析:这是一个规模较小的求最值的算法,习题1.6用函数的方法实现。该题不用函数调用实现,但方

法类似。法一:先求前两个数的最值,再用前两个数的最值和第三个数比较即得结果。法二:先假设第一个

数是最值,再依次和第二、第三个数比较得结果。其中都要用到单分支或双分支选择结构语句。

参考程序如下:

法一:

main()

{inta,b,c,max;/*定义4个整型变量,其中a,b,c存原始数据,max存最值*/

/*提示输入*/

/*格式符之间无分隔符,输入时可以以空格、回车、跳格

分隔*/

if(ab)max=a;

elsemax=b;

if(maxc)max=c;

}

法二:

main()

{inta,b,c,max;

max=a;

if(maxb)max=b;

if(maxc)max=c;

}

4.6有一个函数:写一段程序,输入x,输出y的值。

分析:这是一个典型的分断函数的求解应用。运行时从键盘输入x的值,再判断其范围根据表达式计算

y值并输出即可。该题的关键是如何判断x值的范围,需要用到嵌套的分支选择语句。具体方法比较多,可

以先确定任意一个范围,在确定其余范围时可以用到前一条件不满足的隐含条件。注意嵌套语句中else和if的

配对关系。另外仍然要注意C语言表达式和数学表达式的区别,乘号(*)在C语言表达式中一定不能省略。

参考程序如下:

#includestdio.h

main()

c语言第4章选择结构程序设计习题答案--第1页

c语言第4章选择结构程序设计习题答案--第2页

{floatx,y;

if(x1)

y=x;

elseif(x10)/*使用了隐含条件x=1*/

y=2*x-1;

else/*前两个条件都不满足,则隐含条件为x=10*/

y=3*x-11;

}

对上述参考答案中加粗部分语句的改写方法:

if(x10)if(x=10)if(x=1x=10)

if(x1)y=x;

文档评论(0)

152****4696 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档