电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

c语言教程幻灯片第四章-选择结构

27页
  • 卖家[上传人]:F****n
  • 文档编号:88279716
  • 上传时间:2019-04-23
  • 文档格式:PPT
  • 文档大小:130KB
  • / 27 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、第四章 选择结构程序设计,4.1 关系运算符和关系表达式,关系运算符及其优先级 , = 优先级相同高于 =, != 说明:关系运算符优先级低于算术运算符高于赋值运算符 关系表达式 用关系运算符将两个表达式连接起来的式子 关系表达式的值是一个逻辑值,即“真”或“假”,而在C语言中没有专门的逻辑值,用1代表“真”,用0代表“假”,4.2 逻辑运算符与逻辑表达式,逻辑运算符及其优先级 ! ( 逻辑非)高于 & (逻辑与)高于 | (逻辑或) 优先级:! 高于算术运算符,关系运算符高于 & 高于 | 逻辑表达式 逻辑表达式的值为1(真)或0(假),而在运算过程中任何非零值都认为是“真” 用逻辑表达式表示指定条件 是否为闰年 一个数n是否在-1到1之间(注意:关系运算符与逻辑运算符都是左结合的) 一个字符是否是英文字母,注意:,在逻辑表达式的求解中,并不是所有的逻辑运算符都要被执行。 (1)a&b&c 只有a为真时,才需要判断b的值,只有a和b都为真时,才需要判断c的值。 (2)a|b|c 只要a为真,就不必判断b和c的值,只有a为假,才判断b。a和b都为假才判断c,例:执行表达式(m=ab)&

      2、(n=cd)后,问各变量的值,当a=1,b=2,c=3,d=4,m和n的原值为1时,由于“ab”的值为0,因此m=0,而“n=cd”不被执行,因此n的值不是0而仍保持原值1。,4.3 if语句,1、单分支选择if语句,if 语句有三种形式:单分支选择 if 语句、双分支选择if语句、多分支选择 if 语句。,语句形式:,if (表达式) 语句;,语句执行流程:,4.3.1 if语句的三种形式,说明: 表达式必须用括号括起来,尾部一般不加分号而且其可以为各种类型的表达式,一般为关系表达式或逻辑表达式,其值为真或假,但也可以是其他表达式,只要值为非0即为真,否则为假。,if(E)等价于 if(E!=0) if(!E) 等价于 if(E=0) if(E1=E2) 与 if(E1=E2)的区别,注意:,(1)if语句自动结合一个语句,当满足条件需要执行多个语句时,应用一对大括号 将需要执行的多个语句括起,形成一个复合语句。,(2)if语句中表达式形式很灵活,可以是常量、变量、任何类型表达式、函数、指针等。只要表达式的值为非零值,条件就为真,反之条件为假。,2、双分支选择if语句,语句形式:,i

      3、f (表达式) 语句1; else 语句2 ;,语句执行流程:,表达式,语句1,真(非0),假(0),语句2,if和else语句之间只能有一个语句,当ifelse之间的语句不只一句时,应用一对将语句括起。,if(ab) a+;b+; else a=0;b=10;,注意:,3、多分支选择if语句,语句形式:,if (表达式1) 语句1; else if (表达式2)语句2; else if (表达式n)语句n; else 语句n+1;,语句执行流程:,语句含义:,语句形式:,当if语句中又包含若干个if语句时,则构成了if语句嵌套的情形。,4.3.2 if语句的嵌套,if ( 表达式1) if ( 表达式2) 语句1;,if ( 表达式1) if ( 表达式2) 语句1; else 语句2;,注意: 当if语句中出现多个“if”与“else”的时候,要特别注意它们之间的匹配关系,否则就可能导致程序逻辑错误。,“else”与“if”的匹配原则是“就近一致原则”,即“else”总是与它前面最近的“if”相匹配。,例 有一个函数,编一程序,输入一个x值,输出y值。,上例中的程序段有四个,请判断

      4、哪个是正确的?,程序1: if(x0) y=-1; else if(x=0) y=0; else y=1;,程序2: if(x=0) if(x0) y=1; else y=0; else y=-1;,程序3: y=-1; if(x!=0) if(x0) y=1; else y=0;,程序4: y=0; if(x=0) if(x0) y=1; else y=-1;,4.4 条件运算符,格式: 表达式?表达式表达式 功能: 先求解表达式,若为非(真)则求解表达式,此时表达式的值就作为整个条件表达式的值。若表达式的值为(假),则求解表达式,表达式的值就是整个条件表达式的值 使用场合: 若在if语句中,当被判别的表达式的值为“真”或“假” 时,都执行一个赋值语句且向同一个变量赋值时,可以用一个条件运算符来处理。,说明: 条件运算符优先级高于赋值运算符 ,低于关系运算符和算术运算符。 条件运算符的结合方向为“自右至左”。 “表达式2”和“表达式3”不仅可以是数值表达式,还可以是赋值表达式或函数表达式。 条件表达式中,表达式的类型可以与表达式和表达式的类型不同。,例: if (ab) max=a;

      5、 else max=b; 当ab时将a的值赋给max,当ab时将b的值赋给max,可以看到无论ab是否满足,都是向同一个变量赋值,可以用下面的条件运算符来处理: max=(ab)?a:b;,4.5 switch语句,1、语句形式:,switch(表达式) case 常量1: 语句1; case 常量2: 语句2; case 常量3: 语句3; . case 常量n: 语句n; default : 语句n+1; ,根据表达式的不同值,选择不同的程序分支,又称开关语句。,数值型 或 字符型,常量表达式的值必须互不相同,否则执行时将出现矛盾,即同一个开关值,将对应多种执行方案。,千万不能接(;)号,2、语句执行流程:,指语句的最后一条是否为break,简单语句或复合语句,例 假设用0、1、26分别表示星期日、星期一星期六。现输入一个数字,输出对应的星期几的英文单词。如果输入3,输出“Wednesday”。,程序运行情况如下: 3 Wednesday Thursday Friday Saturday error,#include “stdio.h“ void main() int n; sca

      6、nf(“%d“, ,在“switch”语句中,“case 常量表达式”只相当于一个语句标号,表达式的值和某标号相等则转向该标号执行,但不能在执行完该标号的语句后自动跳出整个switch 语句,因此会继续执行所有后面语句的情况。,为此,语言提供了一种break语句,其功能是可以跳出它所在的switch语句。,将上例4修改如下:,#include “stdio.h“ void main() int n; scanf(“%d“, ,程序运行情况如下: 3 Wednesday,3、说明,多个case语句可以共用一组执行语句。,switch(grade) case A: case B: case C:printf(“grade=60n“);break; default:printf(“grade60“); ,各case和default子句的先后顺序可以变动,而不会影响程序执行结果。,default语句可以省略不用。,case与其后面的常量表达式间至少有一个空格。,switch语句可以嵌套,break语句只跳出它所在的switch语句。,例 企业发放的奖金根据利润提成。从键盘输入当月利润,求应发放奖金总数?,利润x x=10 10x20 20x40 40x60 60x100 100x,(int )x/10,常量 0,1 1,2 2,3,4 4,5,6 6,7,8,9,10 10以上,用这种方法转换后,n出现了在不同区域有重复数字的情况。解决的方法有很多,其中一种是可以采用当x为10的整数倍时,将计算出的n值减1。,使用switch解题的关键,通过分析找到表达式,将问题分成几种情况。,1. 写出下面程序的运行结果 main() int x=1,y=0,a=0,b=0; switch(x) case 1: switch(y) case 0: a+;break; case 1:b+;break; case 2: a+;b+;break; case 3:a+;b+; printf(“a=%d,b=%dn”,a,b); ,结果: a=2,b=1,2.程序填空: 以下程序判断输入的整数能否被3或7整除.,main() int x,f=0; scanf( “%d”, ,1 x%3=0 | x%7=0 2 f=1;,

      《c语言教程幻灯片第四章-选择结构》由会员F****n分享,可在线阅读,更多相关《c语言教程幻灯片第四章-选择结构》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2 2022年小学体育教师学期工作总结 2022年家长会心得体会集合15篇
     
    收藏店铺
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.