- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
顺序 语句1 语句2 语句3 语句n … 条件成立吗? 语句组1 是 选择 语句组2 否 否 第三讲 选择结构程序设计 选择结构的特点是可以根据给定的条件进行判断,在两条(或者多条)可能的路径中选择一条,每条路径分别作不同的处理。C语言提供了选择执行的语句,他根据条件判断结果能有选择的执行多种情况中的一种情况。实行选择的语句是条件语句(if语句)与分支语句(switch语句)。不同的处理结束以后都执行其后的后续语句。 if语句能方便的形成两路分支的结构,这主要在程序中被用作为两个后续分支必须选其一的情况。也就是:当某个条件运行成立时,则须完成某项工作;否则,就必须去做另一项工作或什么也不做。 (1) 格式 格式一: 格式二: if (条件) 语句; if (条件) 语句1; else 语句2; 1、 if语句 一般情况下用关系表达式或逻辑表达式来表示这里的条件 关系运算符 运算符 含义 小于 = 小于或等于 == 等于 = 大于或等于 大于 != 不等于 关系运算符用来构成在if语句和我们将要讨论的其他C语句中使用的关系表达式,这些语句检查表达式为真还是假。 逻辑运算符 运算符 含义 与 || 或 ! 非 有时需要将两个或多个关系表达式组合起来使用,可以用逻辑运算符来实现该目的。 运算符的优先级 运算符 ()(调用函数) - + !(一元运算符) * / % + -(二元运算符) = = == != || = 高 低 (2) 说明 格式一的执行过程是:若条件为真(非零),则执行后面的语句。如果条件为假(零),则跳过该语句,继续执行if语句的下一条语句。 格式二的执行过程是:若条件为真(非零),则执行后面的语句1,否则执行else后面的语句2。然后再执行整个if语句的下一条语句。在书写时写成锯齿形式,可使程序结构清晰,易于阅读。 If语句中,条件一般是逻辑表达式,或者是一个逻辑型的变量。语句1和语句2可以是一个简单语句,也可以是一个由花括号标出的复合语句(代码块)。但整个if结构将始终被看做一个简单语句。 (3) 补充 在编写程序时,应避免出现分支永远不可能执行到的情况,比如下面的语句就是不应该出现的: if (a*a =0) then writeln(a) else writeln(a*a); 其中条件永远成立,else子句就不可能执行到。 例1:输入一个数x,要求不使用abs函数,输出其绝对值。 问题分析:在程序中首先输入一个数给x变量,然后进行判断,条件语句中的条件是x0,当条件成立时,可用(-x)求出x的绝对值,否则原样输出x即可。 (4) 练习 例2:输入三个整数,将其中最大的数输出。 问题分析:可先对任意两个数字进行一次比较,找出其中较大的一个,然后再用这个较大的数和第三个数进行比较,第二次比较之后找到的较大数即三个数当中最大的一个。 例3:将输入的两个非负实数中较大的放在max里,小的放在min里,并输出。 问题分析:比较输入的两个数的大小,如果放在max中的数较小,不符合要求,则只要将两个变量的值进行交换,就实现了题目的要求。交换两个变量的值,需要用到第三个变量。 例4:任意输入三个数a、b、c,按照由大到小的顺序打印出来。 问题分析:最终要求的输出顺序是从小到大,和初始的输入顺序应该是不一致的,我们的基本思路就是交换,将每个变量中的值按照要求的顺序重新放置,具体:变量a中应存放三个数中最大的,变量c中应存放三个数中最小的,而变量B则存放中间的一个。 日常生活经常会给我们提供两个以上的选择。可以用else if扩展if else结构来适应这种情况。我们来看一个例子。 2、 多重选择else if 例:某超市为了促销,规定:购物不足50元的按原价付款,超过50元不足100元的按九折付款,超过100元的,超过部分按八折付款。编一程序完成超市的自动计费工作。 问题分析:我们可以将输入的所购物品的价格放在实型变量w中,则计费的计算公式为: x= 0.9*w (50=w=100) w (w100) 0.9*100+0.8*(w-100) (w100) #includestdio.h int main(void) { float price,cost; printf(Please enter the
您可能关注的文档
最近下载
- MSL防潮等级-J-STD-020(湿度敏感等级分类解说).docx VIP
- 湖北省襄阳市保康县第一中学2021年高一地理期末试题含解析.docx VIP
- 小学数学新苏教版三年级上册全册教案(2025秋新版).doc
- 202X年幼儿园安全教育主题班会 春风为伴 安全与我童行 课件PPT.pptx VIP
- 2025年高考化学二轮复习课件 第01讲 钠及其重要化合物.pdf VIP
- 危重症患者护理案例分析.docx VIP
- 2025年高考化学二轮复习课件 第03讲 镁、铝及其重要化合物.pdf VIP
- 2025年高考化学二轮复习课件 第03讲 氮及其重要化合物.pdf VIP
- 2025至2030爆炸物探测扫描仪行业发展趋势分析与未来投资战略咨询研究报告.docx
- 浙江省J12共同体联盟2024-2025学年九年级上学期期中语文试题(含答案).pdf VIP
文档评论(0)