深职院第3章选择结构教学.ppt_第1页
深职院第3章选择结构教学.ppt_第2页
深职院第3章选择结构教学.ppt_第3页
深职院第3章选择结构教学.ppt_第4页
深职院第3章选择结构教学.ppt_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C语言程序设计,第3章 选择结构,2009-8-30 by 任卫国,2,问题,每一场足球比赛开赛前如何决定场地和开球方? 两个数之间的关系有几种可能性? 你能否想象出求职时获得offer的条件? 请举出现实生活中判断与行动(或者条件与选择)的例子?,2009-8-30 by 任卫国,3,学习目标,学完这一章后,你应该: 认识c语言选择结构的语法格式; 会根据要求写出选择结构的判定条件; 认识关系表达式与逻辑表达式的构成; 会根据要求选用单分支或者双分支选择结构来写程序; 会进行多分支选择结构的程序设计; 会用流程图来描述选择结构,2009-8-30 by 任卫国,4,一、选择结构的判定条件,BACK,在高速路一出口处的判断: 如果 在此口出,请转左 在岔道口的选择:直行,转左,2009-8-30 by 任卫国,5,二、单分支与双分支选择结构,简单if语句(第47页) 问题3.4 应用场合:一件事,有条件地选择做,还是不做,if (条件)语句,printf(“Please input an integer:“); scanf(“%d“, ,2009-8-30 by 任卫国,6,If-else语句(第48页) 问题3.5 应用场合:两件事,有条件地二者择其一,if (条件) 语句1; else 语句2;,双分支选择结构, int iOnOff; printf(“Please input 1 or an integer:“); scanf(“%d“, ,2009-8-30 by 任卫国,7,条件运算,条件运算符与条件表达式 最简单的判断与选择 问题3.6,表达式1?表达式2:表达式3, int iX,iY,iMax; printf(“Please input 2 integers:“); scanf(“%d,%d“, 你还记得Excel中IF函数的参数吗?,2009-8-30 by 任卫国,8,任务23个数中找最大数,算法选择 算法一:全排列法 3个数a,b,c按从大到小排列,有6种可能性 算法二:直接判断最大法 3个数a,b,c,3次判断确定最大数 算法三:逐一比较法 给max初值0或者a的值,然后max与三个数逐一比较 算法四:逐一比较法的简化 不引入变量max,直接用a保留最大值,2009-8-30 by 任卫国,9,任务23个数中找最大数,用if max=a; if(maxb) max=b; if(maxc) max=c; printf(“max = %dn“,max);,条件表达式 max=a; max=max=b ? max : b; max=max=c ? max : c; printf(“max = %dn“,max);,算法的实现方式(以算法三为例):,2009-8-30 by 任卫国,10,任务23个数中找最大数,任务2分析小结:一项任务的实现 算法不是唯一的 算法的实现方式不是唯一的 用你最有把握的算法与实现方式 或者,用最精妙的算法 要准确掌握if语句的格式和条件表达式的格式,2009-8-30 by 任卫国,11,三、多分支选择结构,嵌套if-else语句 问题3.7 问题3.8 应用场合:若干事情,有条件地选择其中之一去做 switch语句 问题3.9 问题3.10,if (条件1)语句1; else if(条件2)语句2; else if(条件3)语句3; else if(条件n-1)语句n-1; else 语句n;,switch(表达式) case 常量1:语句序列1 case 常量2:语句序列2 case 常量n:语句序列n default:语句序列n+1 ,2009-8-30 by 任卫国,12,多分支选择结构运用注意事项,多分支if的执行: 第1个条件为True的分支被执行,然后结束整个if语句,转去执行下一个if之后的下一个语句 如果所有的条件都不为True,执行最后一个else分支 如果所有的条件都不为True,而且不存在最有一个else分支,则转去执行下一个if之后的下一个语句,2009-8-30 by 任卫国,13,四、随机数,用途:程序设计时常用到随机数 应用举例:抽奖,随机抽取某一组学号,或者某个号码,2009-8-30 by 任卫国,14,随机数产生的通式:,/*以下代码产生范围为从A到B-1之间的随机数*/ #include “stdlib.h” #include “time.h” #define A 10 #define B 100 void main( ) int r; srand(unsigned)time( ); r=A+rand( )%(B-A); ,2009-8-30 by 任卫国,15,五、大括号与复合语句,大括号与的应用: 函数体的分界符 复合语句的分界符 复合语句:多个语句用大括号组合在一起 作为选择结构的一个分支 或者,作为循环结构中的循环体,2009-8-30 by 任卫

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论