ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:124.88KB ,
资源ID:23734083      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/23734083.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第4章 选择结构.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

第4章 选择结构.docx

1、第4章 选择结构第4章 选择结构章节分析:所谓选择结构就是根据某种条件的成立与否而采用不同的程序段进行处理的程序结构。教学内容:1、if语句2、switch语句教学重点:1、if语句的嵌套2、switch语句教学难点1、if语句的嵌套2、switch语句课时分配:8课时导入新课:回顾旧课,复习上节课内容。顺序结构程序设计是C 语言结构化程序设计中最简单的方法。在大多数程序中都会包含选择程序设计,它的作用是,根据所指定的条件是否满足,决定从给定的两组操作选择其一。几乎所有实用的程序都包含循环,它和顺序结构、选择结构共同作为各种复杂程序的基本构造单元。因此熟练掌握选择结构和循环结构的概念及使用是程

2、序设计的最基本的要求。第一讲一、条件判断表达式1、关系运算符关系运算符用于确定两个数据之间是否存在着某种关系。关系运算符共有6个,其名称和符号表示如下表所示。其中关系运算符、=的运算优先级相同,高于关系运算符=和!=,=和!=的运算优先级别相同。用关系运算符将两个表达式(算术、关系、逻辑或赋值表达式)连接起来构成关系表达式。当关系表达式成立时,其值为1,当关系表达式不成立时,其值为0。总体上讲,关系运算符的优先级低于算术运算符,高于赋值运算符。2、逻辑运算符当判断条件不唯一时,就需要将两个关系表达式用逻辑运算符连接起来构成逻辑表达式,最终形成完整的条件判断表达式。逻辑运算符“!”的结合方向为右

3、结合,逻辑运算符“&”和“|”的结合方向为左结合。运算规则:逻辑运算符“!”执行非运算,对操作数进行逻辑取反操作;逻辑运算符“&”执行与运算,即两个操作数都为真时,结果才为真;逻辑运算符“|”执行或运算,即两个操作数都为假时,结果才为假。逻辑值的运算规则可以用真值表来说明,如下表所示。二、if语句1、if语句的一般格式 if ( 表达式 ) 语句组1; else 语句组2; 2、if语句的执行流程(1)缺省else子句( 图4-2(a)当“表达式”的值:非0(逻辑真) ,执行语句组;否则,直接转向执行下一条。【例1】输入 3 个整数,输出其中的最大值。# include void main(

4、) int a,b,c,max; /*max中放最大值*/printf(input a,b,c:n);scanf(ddd,&a,&b,&c); max=a; /*先假设a是最大的数*/if (maxb) max=b; /*如果 b 比假设的最大值大,再假设 b是最大的数*/if (max0,方程有两个不等的实根;(2)若 b2-4ac=0,方程有两个相等的实根;(3)若 b2-4ac0,方程有两个复根。 main() float a,b,c,delta,x1,x2,realpart,imagepart;printf(请输入 a,b,c:n);scanf(% f,% f,% f,&a,&b,&c

5、);if(fabs(a) = 1e- 6) printf(这是一次方程 x= % fn,- c/b); else delta= b*b- 4*a*c; if(fabs(delta)1e-6)x1= (- b+ sqrt(delta)/(2*a);x2= (- b- sqrt(delta)/(2*a);printf(有两个不等的实根:x1= % 8.4f和 x2= % 8.4fn,x1,x2); else realpart= - b/(2*a); imagepart= sqrt(- delta)/(2*a); printf(有两个虚根:); printf(% 8.4f+ % 8.4fin, re

6、alpart,imagepart); printf(% 8.4f- % 8.4fin, realpart,imagepart); 4、条件运算符和条件表达式 条件运算符是C语言中惟一的三目运算符,其一般格式为: 表达式1? 表达式2 :表达式3 执行过程是:先求解表达式1,当值为非0(真)时,表达式2的值就是整个条件表达式的值;否则表达式3的值是整个条件表达式的值。例如:若x=3,y=4则下式 xy?x:y 的值为4 条件运算符的优先级低于算术运算符、关系运算符和逻辑运算符。条件运算符的结合性为自右至左。 例如: ab?a:cd?c:d 相当于 ab?a:(cd?c:d)小结:本次课主要讲解了

7、If语句的单分支、多分支及if语句的嵌套,通过例题讲解让同学们理解各种语句的使用方法并利用if语句解决实际问题。作业: 1、从键盘输入三个整数,并按从大到小的顺序输出。 2、从键盘输入一个整数,判断这个整数是奇数还是偶数。 3、从键盘输入一个年份,判断是否为闰年。第二讲复习回顾:上次课讲到了if语句的单分支、双分支及If语句的嵌套(多分支)情况,本节课学习使用switch语句完成多分支结构。一、switch语句用if语句只能进行两路选择,但在实现多路选择时须使用多个if语句,因此用if语句解决多路问题非常不方便,这时可利用switch语句实现多条件多分支程序设计。1、一般形式switch( 表

8、达式 ) case 常量表达式1:语句组1;break; case 常量表达式2:语句组2;break; . case 常量表达式n:语句组n ;break; default:语句组n+1; 2、执行流程指定break语句(1)当“表达式”的值与某个case后面的“常量表达式”的值相同时,就执行该case后面的语句(组);当执行到break语句时,转向执行switch语句的下一条语句。(2)如果没有任何一个case后面的“常量表达式”的值与“表达式”的值匹配,则执行default 后面的语句(组)。然后,再执行switch语句的下一条。3、执行流程缺省break语句 case后面的常量表达式仅

9、起语句标号作用,并不进行条件判断。缺省break语句时,系统一旦找到入口标号,就从此标号开始执行,不再进行标号判断,其执行流程如右图所示:【例3】给一百分制成绩,要求输出成绩等级A,B,C,D,E。90分以上为A ,80-89分为B,70-79分为C,60-69分为D,60分以下为E。程序如下:main( ) int g;printf(Enter a mark : );scanf(%d, &g); /* g中存放学生的成绩*/printf(g=%d :, g);switch(g/10) case 10 : case 9 : printf(An); case 8 : printf(Bn); ca

10、se 7 : printf(Cn); case 6 : printf(Dn); default : printf(En);程序分析: 当执行以上程序输入一个85分的学生成绩后,接着执行switch语句,首先计算switch后一对括号中的表达式:85/10,它的值为8;然后寻找与8吻合的case8分支,开始执行其后的各语句。 程序的输出结果如下 : g=85 :B C D E 在输出与85分相关的B之后,又同时输出了与85分毫不相关的等级C、D、E,这显然不符合原意。如果想只输出我们输入的分数与相应的等级,在每条case语句后面加break语句即可。后面我们将具体介绍break语句的作用。说明:

11、(1)switch是关键字,switch语句后面用花括号括起来的部分称为switch语句体。(2)紧跟在switch后一对括号的“表达式”可以是整型表达式及后面将要学习的字符型或枚举型表达式等。表达式两边的一对括号不能省略。(3)case也是关键字,与其后面的常量表达式合称case语句标号。常量表达式的类型必须与switch后的表达式类型相同。各case语句标号的值应该互不相同。(4)default也是关键字,起标号的作用,代表所有case标号之外的那些标号。default标号可以出现在语句体中任何标号位置上。在switch语句体中也可以没有default标号。(5)case语句标号后的语句1

12、、语句2等,可以是一条语句,也可以是若干条语句。(6)必要时,case语句标号后的语句可以省略不写。(7)在关键字case和常量表达式之间一定要有空格,例如case 10,不能写成case10:作业:1、已知某公司员工的保底薪水为500,某月所接工程的利润profit(整数)与利润提成的关系如下(单位:元): profit1000 没有提成; 1000profit2000 提成10%; 2000profit5000 提成15%; 5000profit10000 提成20%; 10000profit 提成25%。算法设计要点:将利润profit与提成的关系,转换成某些整数与提成的关系。2、根据输入的数字输出相应的英文星期名称。3、判断输入一个数的奇偶性。小结本章主要讲解选择结构,也就是根据条件的成立与否而执行不同的程序段,通常程序有两个分支,条件为“真”执行一个分支,为否执行另一个分支,如果有多个条件就要考虑选择结构的嵌套和switch语句。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1