- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第04章选择结进构程序设计
例:输入任意三个整数num1、num2、num3,求三个数中的最大值。 4.3 关系运算及其表达式 1.关系运算符:比较两个量的运算符 , =, ,=, ==, != 说明:其结合性均为左结合。关系运算符的优先级低于算术运算符,高于赋值运算符。 在六个关系运算符中,,=,,=的优先级相同,高于==和!=,==和!=的优先级相同。 4.4 逻辑运算符及其表达式 关系表达式只能描述单一条件,例如“x=0”。如果需要描述“x=0”、同时“x10”,就要借助于逻辑表达式了。 1、逻辑运算符及其优先次序 ,||,! 如果在if语句中,当被判别的表达式的值为“真”或“假”时,都执行一个赋值语句且向同一个变量赋值时, 可使用条件表达式来实现。 例如条件语句: if(ab) max=a; else max=b; 可用条件表达式写为: max=(ab)?a:b; 条件运算符为?和:,它是C语言中唯一的一个三目运算符。 由条件运算符组成条件表达式的一般形式为: 表达式1? 表达式2: 表达式3 其求值规则为:如果表达式1的值为真,则以表达式2 的值作为条件表达式的值,否则以表达式2的值作为整个条件表达式的值。 使用条件运算符不但使程序简洁,也提高了运行效率。 条件运算符的优先级,高于赋值运算符,但低于关系运算符和算术运算符。其结合性为“从右到左”(即右结合性)。 例如: ab?a:cd?c:d 应理解为 ab?a:(cd?c:d) 这也就是条件表达式嵌套的情形,即其中的表达式3又是一个条件表达式。 4.7 switch语句 C语言提供了switch语句直接处理多分支选择。 其一般形式为: switch(表达式){ case 常量表达式1: 语句1; case 常量表达式2: 语句2; … case 常量表达式n: 语句n; default : 语句n+1; } 从键盘上输入一个百分制成绩score,按下列原则输出其等级:score≥90,等级为A;80≤score90,等级为B;70≤score80,等级为C;60≤score70,等级为D;score60,等级为E。 说明: (1)switch后面的“表达式”,可以是int、char和枚举型中的一种。 (2)每个case后面“常量表达式”的值,必须各不相同,否则会出现相 互矛盾的现象(即对表达式的同一值,有两种或两种以上的执行方案)。 (3)case后面的常量表达式仅起语句标号作用,并不进行条件判断。系统一旦找到入口标号,就从此标号开始执行,不再进行标号判断,所以必须加上break语句,以便结束switch语句。 (4)各case及default子句的先后次序,不影响程序执行结果。 (5)多个case子句,可共用同一语句(组)。 (6)用switch语句实现的多分支结构程序,完全可以用if语句或if语句的嵌套来实现。 * 第4章 选择结构程序设计 要设计选择结构程序,要考虑两个方面的问题:一是在C语言中如何来表示条件,二是在C语言中实现选择结构用什么语句。 在C语言中表示条件,一般用关系表达式或逻辑表达式,实现选择结构用if语句或switch语句。 关系运算及其表达式 逻辑运算及其表达式 条件运算符及其表达式 if语句 switch语句 选择结构程序举例 4.2 用if语句实现选择结构 C语言的if语句有三种基本形式。 第一种形式为基本形式:if if(表达式) 语句 第二种形式为: if-else if(表达式) 语句1; else 语句2; 第三种形式为if-else-if形式 前二种形式的if语句一般都用于两个分支的情况。 当有多个分支选择时,可采用if-else-if语句,其一般形式为: if(表达式1) 语句1; else if(表达式2) 语句2; else if(表达式3) 语句3; … else if(表达式m) 语句m; else 语句n; main(){int num1,num2,num3,max; printf(Please input three numbers:); scanf(%d,%d,%d,num1,num2,num3); if
文档评论(0)