第二讲选择程序设计和循环程序设计.ppt
《第二讲选择程序设计和循环程序设计.ppt》由会员分享,可在线阅读,更多相关《第二讲选择程序设计和循环程序设计.ppt(103页珍藏版)》请在三一办公上搜索。
1、第二讲 选择与循环程序设计(C语言的精髓),2.1 选择程序设计(分支),重要的两句话:1、选择是需要有条件的;2、选择是残酷的,根据条件的不同,有的被选择,有的不被选择。,构成条件的基础,1、关系运算符与关系表达式,2、逻辑运算符和逻辑表达式,1、关系运算符与关系表达式,关系运算符有:、=、=(优先级高)=、!=(优先级低),关系表达式,由关系运算符组成的有一定比较关系的表达式称为关系表达式。例如:salary=1500 age=60,关系表达式的结果:成立或不成立 逻辑成立:true 逻辑不成立:false 例如:53 成立,true 35 不成立,false,2、逻辑运算符和逻辑表达式,
2、当条件比较复杂,一个关系表达式无法满足实际需求时,要用到多个条件的组合,此时需要用到逻辑运算符和逻辑表达式。例如,构成三角形的条件,满足结婚的条件,逻辑运算符,逻辑与:&逻辑或:|逻辑非:!,逻辑与&,逻辑或|,由关系表达式和逻辑运算符组成的表达式为逻辑表达式。例如:能构成三角形的条件:a+bc&b+ca&c+ab 可以结婚法定年龄的条件:boy_age=22&girl_age=20,逻辑表达式,在C语言中,在给出逻辑表达式的结果时,以数值1代表“真”,以数值0代表“假”。,举例:(1)5+24&3=2 其结果是0(2)5+24|3=2 其结果是1,优先级:算术运算符的优先级要高于关系运算符,
3、关系运算符的优先级要高于逻辑运算符。,二级考试题,已知a是一具体数值,则表达式a=3|a!=3的结果是()A、0 B、1 C、2 D、a的值不知道,无法确定,注意:,在判断一个具体的数值量是否为“真”时,以0代表“假”,以非0代表“真”。,#include main()while(1)printf(同志们好!n);printf(首长好!n);printf(同志们辛苦了!n);printf(为人民服务!n);,#include#include main()while(1)printf(同志们好!n);printf(首长好!n);Sleep(1000);printf(同志们辛苦了!n);print
4、f(为人民服务!n);,不断输出:同志们好首长好结论:死循环按Ctrl+break终止死循环,#include main()while(0)printf(同志们好n);printf(首长好n);printf(同志们辛苦了n);printf(为人民服务n);,选择程序在C语言中的具体实施,if语句switch.case 结构(略),if 语句,if语句用来判定所给定的条件是否成立,根据判定的结果(真或假)决定执行不同的分支。,重要规则:满足条件,执行相应的分支;不满足条件,顺序执行。,if语句的几种形式,纯if语句(枚举法)ifelse结构 ifelse ifelse结构 if语句的嵌套,将所有
5、的条件全部罗列出来,为每个条件给出相应的执行语句。功能最强大的语句之一。,纯if语句(枚举法),举例:输入一个学生的成绩,如果大于等于60,则输出“恭喜,你通过了!”,否则输出“未通过,好好准备补考”。,#include main()int score;scanf(%d,举例:输入一个成绩score若score=80,输出“优秀”用ifelse ifelse 完成。,#include main()int score;printf(请输入一个分数:);scanf(%d,错误写法,if(90=score=100)printf(优n);,石头、剪刀、布游戏,#include#include#incl
6、ude main()int i;int j;srand(time(NULL);i=rand()%3;printf(输入0、1或2,分别代表石头剪刀布);scanf(%d,if(i=0,ifelse结构,当条件只有两种可能时,可以采用ifelse结构。,语法形式为:if(条件)语句1;else 语句2;,举例:,#include main()int score;scanf(%d,#include main()int boy_age,girl_age;scanf(%d,%d,举例:,ifelse ifelse结构,当条件的区间划分比较复杂时,ifelse结构将不能满足要求,此时要采用ifelse
7、ifelse结构。,if(条件1)语句1;else if(条件2)语句2;else if(条件3)else 语句n;,格式:,举例:输入一个成绩score若score=80,输出“优秀”用ifelse ifelse 完成。,#include main()int score;scanf(%d,从小到大,if(score60)printf(不及格);else if(score70)printf(及格);else if(score80)printf(中);else if(score90)printf(及格);else printf(优);,#include main()int score;scanf
8、(%d,从大到小,if(score=90)printf(优);else if(score=80)printf(良);else if(score=70)printf(中);else if(score=60)printf(及格);else printf(不及格);,举例:用ifelse ifelse 完成i20 输出“张飞”,if(i=5)printf(诸葛亮);else if(i=10)printf(周瑜);else if(i=20)printf(鲁肃);elseprintf(“张飞);,if语句的嵌套,当一个if语句结构中又 包含一个或多个if语句,称为if语句的嵌套。典型案例:某推销员的月收
9、入,典型案例:某推销员的月收入,举例:某洗发水推销员,其基本工资是人民币600元/月,如果当月销售额超过10000元,有提成,低于10000元,则没有提成,具体提成如下:提成计算如下:提成=0.1*销售额 月销售额=20000 输入这个推销员一个月的销售额,计算其当月的收入并输出。,#include main()float wage;float sale;printf(请输入销售额:);scanf(%f,综合举例:两人玩掷骰子的游戏用纯if语句完成If语句的嵌套完成,#include#include#include main()srand(time(NULL);int d11,d12,d21,
10、d22,sum1,sum2;d11=rand()%6+1;d12=rand()%6+1;d21=rand()%6+1;d22=rand()%6+1;sum1=d11+d12;sum2=d21+d22;printf(%d%dn,d11,d12);printf(%d%dn,d21,d22);,if(d11!=d12,if(d11!=d12,2.2 循环程序设计,循环在我们生活中需要反复执行某一段程序,即循环,循环的组成,循环初值设定循环条件判断循环操作循环参数改变,循环的原则,满足循环条件,执行循环体;不满足循环条件,跳出循环体,执行循环体以外的程序。,循环分类,当循环先判断循环条件,满足循环条件
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第二 选择 程序设计 循环
链接地址:https://www.31ppt.com/p-5649855.html