C语言_04选择结构.ppt

  1. 1、本文档共44页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
选择结构程序设计 C 语言程序设计 Lecture 4 关系运算符和关系表达式《 关系运算符和表达式 关系运算符 种类: = = = = != 结合方向:自左向右 优先级别: 关系运算注意: 逻辑运算规则简化: ⑴、两个表达式作,只要一个的值为0,不必计算另一个,该表达式的值为0。 例:int a=0,b=2;a (b+=b) ⑵、两个表达式作 || ,只要一个的值非0,不必计算另一个,该表达式的值为1。 例:int a=5,b=2; a || (b+=b) 例:a=1;b=2;c=3;d=4;m=1;n=1; (m=ab)(n=cd) m=?,n=? 例:判断某一年是否是闰年。条件是 能被4整除,但不能被100整除 或能被400整除。 用year表示年份,判断闰年的逻辑表达式为: 如果给year输入一个的值,使上面的表达式的值为1 时,则year所代表的年份就是闰年。 一般形式: expr1 ? expr2 : expr3 功能:相当于条件语句,但不能取代一般if语句 课堂练习 1.判断一个点是否 落入圆形中。 2.判断一个点是否落入阴影部分。 (小圆的半径为1) 已知int x=1,y=2,z;执行语句z=xy?++x:y++;后,x、y、z的值分别为____、____和 ____ 。 已知int a=4,b=5,c;执行语句c=a=ab后,a的值为 ____ 。 已知int x=10,y=3 , z;执行语句printf(%d\n , z = (x%y , x/y));后,输出结果为 ____ 。 已知char ch=A‘;ch=(ch=Ach=Z)?(ch+32):ch;的值为____。 已知w=1,x=2,y=3,z=4;则表达式5+wx?w:yz?y:z; 的值为 ____。 执行printf(“%d”,(a=2(b=-2)));语句后,输出结果为____。 已知int x=15,y=5; 执行语句printf(“%d\n”,x%=(y%=2));后,输出结果为____。 int a=3,b=4,c=5;则值为0的表达式是() A) ‘a’‘b’ B) a=b C) a||b+cb-c D) !((ab)!c||1) “20x30或x-100”的C语言表达式是____。 main( ) { int a=-1,b=4,k; k=(a++=0)(!(b--=0)); printf(“%d%d%d”,k,a,b); } if 语句 1、if语句,用来实现选择结构。 2、下面介绍if语句的三种形式。 单分支 双分支 多分支 (1)单分支选择结构 形式: if (表达式) 语句 例子: (2)双分支选择结构 形式: if (表达式) 语句1 else 语句2 例子: if (xy) printf(”%d\n”,x); else printf(”%d\n”,y); (3)多分支选择结构 形式: if (表达式1) 语句1 else if (表达式2) 语句2 else if (表达式3) 语句3 ……... else if (表达式m) 语句m else 语句n 例子:见书。 (4)if语句嵌套的问题 在if语句中又包含一个或多个if语句称为if语句嵌套。注意if与else的配对关系。从最内层开始,else总是与它上面最近的而且是未曾配对的if配对。试分析: if语句嵌套的问题举例 实现函数(见右)的程序段哪些是正确的,哪些是错误的? 3、若在if语句中,在表达式为“真”和“假”时,都只执行一个赋值语句给同一个变量赋值,则可以用简单的条件运算符处理。如: if (ab) max=a; else max=b; 可改为: max=(ab)?a:b; 4、使用if语句的注意事项 ①三种形式的if语句后面的表达式一般为逻辑表达式或关系表达式,但也可以是其它数值类型的表达式 ②注意每个语句后面都有分号; ③如果语句 m为多个操作语句,则必须用{ }括起来成为一个复合语句。 if (3) printf(“%s\n”,“O.K”); if (‘a’) printf(“%s\n”,“O.K”); if ( 2.1) printf(“%s\n”,“O.K”); if (a+bca+cbb+c

文档评论(0)

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

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

1亿VIP精品文档

相关文档