第三版C语言PPT课件讲解第05章选择结构程序设计.ppt

第三版C语言PPT课件讲解第05章选择结构程序设计.ppt

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

第五章 选择结构程序设计 要设计选择结构程序,要考虑两个方面的问题:一是在C语言中如何来表示条件,二是在C语言中实现选择结构用什么语句。 5.1 关系运算及其表达式 5.2 逻辑运算及其表达式 5.3 if语句 5.4 switch语句 5.5 选择结构程序举例 5.1 关系运算符和关系表达式 关系运算实质是比较运算,它是将两个值进行比较,判断其比较的结果是否符合给定的条件,其结果为真(1)或者为假(0)。 5.1.1关系运算符及其优先次序 C语言提供了6种关系运算符: 5.1.2 关系表达式 用关系运算符将两个表达式(可以是算术表达式或关系表达式,逻辑表达式、赋值表达式、字符表达式)连接起来的式子,称为关系表达式。下面为一些合法的关系表达式: a+bb+c (a=3)(b=5) ‘a’‘b’ 关系表达式的结果只有两种:真或假;在C语言中,以数值1代表“真”,数值0代表“假”。 例:假设a=3,b=2,c=1,则: (ab) = = c d=ab f=abc 5.2 逻辑运算符和逻辑表达式 5.2.1 逻辑运算符及其优先次序 C语言提供三种逻辑运算符: 几种运算符的优先次序为: 5.2.2 逻辑表达式 给出逻辑运算结果: 数值1代表“真”,数值0代表“假” 判断一个量是否为“真” : 0代表“假”,非0代表“真” 例: 1)若a=4,则!a=0; 2)若a=4,b=5 则 ab=1;a | | b=1;! a | | b=1; 3)532 || 84-!0的值为1; 4)‘c’’d’的值为1; 说明: 对于“”和“| |”逻辑运算符,在逻辑表达式求解中,有时并不需要执行所有的逻辑运算符。例如: abc,如果a为假,就不必判别b和c的值; a | | b | | c,如果a为真,也不必判别b和c的值了。 所以,对于(m=ab)(n=cd),如果“ab”的值为0,则n将不进行赋值运算而保留原值(Why?); 一个重要的例子: 判断某一年是否为闰年的方法。而为闰年的条件是符合下面两者之一: (1)能被4整除,但不能被100整除; (2)能被4整除,又能被400整除; 写出逻辑表达式: 首先分析逻辑结构: 1、条件(1)和条件(2)的关系应该是“或”; 2、而每个条件内部应该为“与”关系; 3、条件(2)内,满足被400整除的一定满足被4整除,因此只需一个逻辑表达式即可; 所以最后的逻辑表达式为: ((year%4==0)(year%100!==0))| |(year%400==0) 根据运算符的优先级关系,上式可简化为: year%4==0 year%100!=0 | | year%400==0 5.3 if 语句 5.3.1 if 语句的三种形式: 1. if (表达式) 语句; 执行过程,如左图: if (xy) printf (“%d”,x); 2. if (表达式) 语句1; else 语句2; 例如: if (xy) printf (“%d”,x); else printf(“%d”,y); 3. if (表达式1) 语句1; else if (表达式2) 语句2; else if (表达式3) 语句3; … else if (表达式m) 语句m; else 语句n; 例: if (number500) cost=0.15; else if (number300) cost=0.10; else if (number100) cost=0.075; else if (number50) cost=0.05; else cost=0; 说明: 1)if 语句中在if后面都有表达式,一般为逻辑表达式或关系表达式,也可以为其它表达式;如果表达式的值为0,则按“假”处理,如果为非0,则按“真”处理; 例如:if (3) printf(“O.K.”); 直接执行打印“O.K.” if (‘a’) printf(“%d”,’a’); 打印’a’的ASCII码97 2)注意在if 语句每个语句后都有分号; if (number500) cost=0.15; else if (numbe

文档评论(0)

2017meng + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档