- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
技术二[2-1]
第2章 程序流程控制语句 选择结构:根据是否满足指定条件,决定是否执行给定的一个或两个计算或处理 条件:关系表达式或逻辑表达式 选择结构:if语句(及switch语句) 1、关系运算符(relational operator)与关系表达式 关系运算符用于比较两个值的大小 == 等于 != 不等于 大于 = 大于或等于 小于 = 小于或等于 While(1){ …… } 2、逻辑运算符与逻辑表达式 关系表达式只能描述单一条件,如果描述满足条件“x=0同时x10” ,则要借助逻辑表达式,即记为 (x=0)(x10) 逻辑表达式:逻辑运算符连接一个或多个表达式(多为关系或逻辑表达式)组成,其计算结果为真或假(对应值为1或0) 算术、关系、逻辑及赋值运算符的优先级 ! 算术运算 关系运算 || 赋值运算= xy 当且仅当x和y值都为 “真”,则xy为“真”,否则为“假” x||y 当且仅当x和y值都为 “假” ,则x||y为“假”,否则为“真” !x x值“真”,!x“假”;或反之 3、if语句与if-else语句 (1) if(条件) { 语句序列 } (2) if(条件) { 语句序列1 } else { 语句序列2 } 示例分析(程序片段) 输入一个正整数,判断是否是偶数 if((num%2)==0) printf(This number is even!); if(xy) max=x; else max=y; (1) if(条件) { 语句序列 } (2) if(条件) { 语句序列1 } else { 语句序列2 } if(条件1) if(条件2) 语句1 else 语句2 如判断n小于0、等于0或大于0的if-else结构(根据条件真假,输出相应的判断结果信息) 示例2:三个数求最大值(用嵌套if-else) 类似于示例1:三个数定义为x,y,z,最大值为max,可以用一个嵌套if-else语句实现 三角形面积计算的程序片段 if(a+bcb+cac+ab){ s=(a+b+c)/2; /*a,b,c均实数*/ area=sqrt(s*(s-a)*(s-b)*(s-c)); printf(area=%6.2f\n,area); } else printf(Not a trilateral!); 案例9:输入百分制成绩(score),将其转换为相应的等级(grade) 各等级与百分制成绩对应: score≥90 A 80≤score90 B 70≤score80 C 60≤score70 D score60 E 若成绩值超出范围,程序应进行适当的处置,如提示“Out of range”后终止 算法步骤简要描述 设成绩score、等级grade,设标志error并置初值0(若为无效成绩,将其置为1) 输出提示信息并读入成绩score 设嵌套if结构实现等级转换: 对同一问题,可能有不同的设计思路,程序也就不同,取决于设计者的风格。上述程序可以重新设计如下: 案例10:简单计算器设计(能进行加、减、乘、除运算的计算器) 思路:输入你的运算,如10+20或10*20等,直接输出运算结果 显然:程序要能够根据读入的运算符+、-、*、/分别进行相应的计算 运行示意 Enter your calculation:10+20? 30 Enter your calculation:5-20? -15 Enter your calculation:10*20? 200 Enter your calculation:4/6? 0.67 main(){ float x,y,r; char op; printf(Enter your calculation:); scanf(%f%c%f,x,op,y); if(op==+) r=x+y; else if(op==-) r=x-y; else if(op==*) r=x*y; e
文档评论(0)