版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
程序设计基础第3章选择结构程序设计目
录3.1
初识选择结构3.1.1
关系运算符和关系表达式3.1.2
逻辑运算符和逻辑表达式3.2if语句3.2.1简单if语句3.2.2简单if…else语句3.2.3多重if…else语句3.2.4if结构的嵌套3.3
switch语句3.3.1switch语句的基本形式3.3.2多路开关模式的switch语句3.3.3switch与if…else的比较3.4
选择结构综合实例本章小结3.1.1关系运算符和关系表达式判断程序流程的条件经常是通过比较两个量的大小关系来决定的。用来比较两个量的关系的运算符称为关系运算符。使用关系运算符的表达式称为关系表达式。3.1.1关系运算符和关系表达式关系运算符的两边可以是变量、数值或表达式。关系运算符都是双目运算符,其结合性均为左结合。关系运算符的优先级低于算术运算符,高于赋值运算符。在六个关系运算符中,<,<=,>,>=的优先级相同,高于==和!=,==和!=的优先级相同。3.1.1关系运算符和关系表达式关系表达式关系表达式的运算结果为真或者假,用“1”和“0”表示。关系表达式也可以嵌套。相同优先级的关系运算符结合律是从左往右。注意:关系运算符“==”与赋值运算符“=”的区别。例程3-1----不同关系表达式的计算运行结果3.1.2逻辑运算符和逻辑表达式逻辑运算符是用来比较和操作布尔值的运算符。逻辑运算符的两边可以是变量、数值或表达式。与运算符“&&”和或运算符“||”均为双目运算符。结合性为左结合。非运算符“!”为单目运算符,结合性为右结合。逻辑运算符和其他运算符的运算优先级关系(由高到低):例程3-2----简单逻辑运算运行结果3.2.1简单if语句使用if语句可以构成分支结构----根据给定的条件进行判断,以决定执行某个分支程序段。简单if语句功能:如果表达式的值为真,则执行其后的语句,否则不执行该语句。流程图:例程3-3----判断2个整数大小,输出较小整数运行结果3.2.2简单ifelse语句简单if···else语句结构功能:如果表达式的值为真,则执行语句1,否则(表达式的值为假)执行语句2。流程图:例程3-4----判断2个整数大小,输出较小整数运行结果3.2.2简单ifelse语句条件运算符和条件表达式如果在条件语句中,只执行简单的单个赋值语句,就可以使用条件表达式来实现。条件运算符“?:”又称为三目运算符,格式如下:功能:如果表达式1的值为真,则结果为表达式2的值,否则(表达式1的值为假)结果为表达式3的值。条件表达式通常用于赋值语句。例程3-5----使用条件表达式修改例程3-4运行结果略使用条件表达式不但使程序结构简洁,需要注意:(1)条件运算符的运算优先级低于关系运算符和算术运算符,高于赋值符。【例3-5】中的条件表达式可以写为:min=a>b?b:a;(2)条件运算符的结合方向是自右至左,且“?”和“:”不能分开单独使用。3.2.3多重ifelse语句当判断的条件超过2个时,可以使用多重if-else语句结构实现多重条件判断。语句基本格式功能:依次判断表达式1到表达式n的值,当某个表达式的值为真时,执行其对应的语句;然后跳转到整个if语句结构之外继续执行。如果所有的表达式均为假,执行最后一条else其后的语句n,然后继续执行。例程3-6----判断3个整数大小,输出其中最大整数运行结果3.2.4
if结构的嵌套当if语句中的执行语句也是if语句结构时,就构成了if语句的嵌套。语句基本格式
或者C语言规定,else总是与它前面最近的if配对。例如:应该理解为:例程3-7----采用嵌套结构实现例程3-6运行结果3.3.1
switch语句的基本形式当条件判断分支过多时,用if-else处理会出现结构繁琐、if-else配对出错的情况。----可以使用switch结构处理。语句的基本格式:功能:计算表达式的值。逐个与case关键字其后的常量表达式值相比较,当表达式的值与某个常量表达式的值相等时,执行其后的语句;然后不再进行判断,继续执行后续case关键字后面的所有语句。如表达式的值与所有case后的常量表达式值均不相同时,则执行default关键字后面的语句。3.3.1
switch语句的基本形式流程图例程3-8----根据输入的成绩等级字符,输出相应内容运行结果例程3-8-1----修改3-8,使其符合设计要求运行结果3.3.2多路开关模式的switch语句利用break语句,可以设计多路开关模式的switch语言结构。语句的基本格式:例程3-9----根据输入的月份,输出所在季节运行结果3.3.3
switch与ifelse结构的比较1.语法if语句是先对条件进行判断,而switch语句是先进行后判断。switch语句实际上就是复杂的多重分支语句结构。判断条件比较少的时候,使用if-else结构书写简洁,程序可读性好;当条件比较多的时候,if-else会出现多层分支和嵌套分支情况,语法复杂,书写难度比较大,出现语法错误的几率也会大大增加,这时候就可以使用switch结构。2.运行效率绝大部分情况下,switch的执行效率要高于if语句。switch语句在运行时,系统会生成一个“跳转表”来指示实际的case分支的地址,而这个“跳转表”switch中的case值是一一对应的,switch只需要访问对应索引号的表项就可以到达定位分支的目的。而if-else语句需要一条一条的去进行取值范围的判断,直到找到正确的选项位置,这样的话势必会浪费大量的时间。到底使用哪一种选择分支语句结构,和程序设计当前的代码环境有关,如果是范围取值,使用if-else语句会更为快捷;如果是确定取值,则使用switch语句是相对合理的选择。:3.4选择结构综合实例国家对于缴纳个人所得税的相关政策和计算公式如下:例3-10计算个人所得税运行结果根据用户输入的算式格式,使用switch结构对运算符进行分支判断,实现简单四则运算。如果运算符为“/”(除法),需要判断被除数是否为零的情况,在switch结构中嵌套了if-else结构实现程序功能。例3-11简单整数四则运算
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 会计成本核算精确度绩效考评表
- 物流主管物流配送成本绩效衡量表
- 建筑工地安全作业标准化流程指南
- 办公桌椅使用规范与保养指南
- 精准农业技术应用效果考核表
- 供应链管理师精通库存优化方案
- 外贸跟单操作流程与注意事项指南
- 船级社指南 船舶废气再循环(EGR)系统应用指南 GD23-2020
- 人力资源部关于招聘面试安排的通知4篇
- 电信行业技术支持主管客户服务KPI考核表
- 水利水电工程混凝土防渗墙施工技术规范
- 2025-2026学年冀少版八年级生物上册知识点总结
- 无锡科技馆新建设方案
- 科普大气压教学课件
- 云桌面技术分享
- 《复合材料电缆沟盖板》编制说明
- 2026年高考北京卷文综地理考试题目及答案
- 奖项申报委托协议书
- 2025年西安交通大学财务处招聘(4人)笔试考试参考试题及答案解析
- 家政服务中级技能
- 侍茄师初级练习测试卷
评论
0/150
提交评论