网站大量收购闲置独家精品文档,联系QQ:2885784924

c语言程序设计课它件0905选择结构程序设计.ppt

c语言程序设计课它件0905选择结构程序设计.ppt

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

选择结构程序设计 课程:程序设计语言 教材:谭浩强《C程序设计》第三版 教师:陈小荷 本章重点 掌握关系运算符、逻辑运算符的优先次序,理解条件表达式的意义。 掌握if语句的四种形式,能针对具体问题正确运用。 理解switch语句的控制结构,能正确运用。 关系运算符 小于 = 小于或等于 大于 优先级高(6) = 大于或等于 == 等于 优先级低(7) != 不等于 关系表达式 比较两个运算数,表达式成立则值为 1 ( true ) ,否则值为 0 ( false ) : x y // 未知 x + 5 x // 1 ( true ) x + 5 x // 0 ( false ) x + 5 == x // 0 ( false ) x + 5 = x // 1 ( true ) 关系运算符与算术运算符 算术运算符的优先级是3(乘除余)和4(加减) 以下两个表达式的值是多少? 10 + ( 20 25 ) , ( 7 10 ) * 100 以下四个表达式,如果要加括号,并且不能改变原来的优先次序,应该怎么加? 10 + 20 25 , x * y z z == x y , z ! = x y 关系运算符的结合方向 关系运算符的结合方向是自左至右 设x、y、z的值分别是 5、3、1,那么关系表达式 x y z 的值是多少?如果它们的值分别是 1、3、5 呢? 数学书上 x y z 的意思是 x大于y,y大于z,这个意思用C语言来表达,应该是: x y y z 关系运算符和赋值运算符 重温:赋值运算符的优先级低(14) x = y z 等价于下面哪个表达式? ( x = y ) z x = ( y z ) 若 x, y, z 的初值分别是 5, 3, 1 ,下面表达式的值是多少? x = y z 逻辑值表 第一行是标题。以第二行为例,读法是: 若a真b真,则非a和非b均假,a b 为真,a || b 亦为真。 逻辑表达式求值是自左至右的,一旦发现已经可以根据一个运算数求值,就不会再对第二个运算数求值。例如,在 a b 中,如果已知a假,则整个逻辑表达式为假,不必再考虑b的值 逻辑运算符的优先级和结合方向 逻辑反的结合方向是自右至左,其他逻辑运算符的结合方向均为自左至右 逻辑非 ! ,优先级2 算术运算符,优先级3和4 关系运算符,优先级6和7 逻辑与 ,优先级11 逻辑或 | | ,优先级12 赋值运算符,优先级14 表达式求值 假定以下变量 a, b, c, d 的值分别是 0, 1, 2, 3 ,变量 x 和 y 的值未知,请对下列表达式求值: x = y 10 12 x = y x != x a b || 3 1 a b || x x - 1 a b | | c d a ( b || c ) d 表达式求值 假定 a, b, c 的值分别是 3, 4, 5 a + b c b = = c (( a + b ) c ) ( b = = c ) a || b + c b – c ! ( a b ) ! c || 1 ! ( x = a ) ( y = b ) 0 ! ( a + b ) + c – 1 b + c / 2 练习写一些表达式 判断是否“及格”(60分及格) 判断是否“英文字母” 判断是否“小写英文字母或阿拉伯数字” 判断是否“能被4整除” 判断是否“能被4整除但不能被100整除” 判断是否“闰年” 形式1:if (e) s ; 是否执行s,取决于e的值 sample : 输入’g’, ‘0’,两个printf语句的执行情况如何? # include ctype.h if ( isletter(ch) ) /* 判断ch是否字母*/ printf(“%c is a letter \n”, ch); printf(“thank you.\n”); 形式2:if (e) s1; else s2; e的值非 0, 执行 s1, 否则执行 s2 sample : 输入’g’, ‘0’,两个printf 语句的执行情况如何? if ( isletter(ch) ) printf(“%c is a letter \n”, ch); else printf(“%c is not a letter \n”, ch); s 可以是

文档评论(0)

150****4233 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档