欢迎来到天天文库
浏览记录
ID:58670048
大小:939.00 KB
页数:45页
时间:2020-10-05
《第四讲 分支(选择)结构程序设计ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、分支(选择)结构程序设计2021/7/301复习关系运算符if语句分支结构程序设计思想2021/7/302逻辑判断关系运算符和关系表达式>大于<小于>=大于等于<=小于等于==等于!=不等于2021/7/303关系判断#includemain(){intb,c;//整型变量b=3;c=2;//对变量赋值printf(“3>2是%d”,(b>c));//输出逻辑值printf(“3>=2是%d”,(b>=c));printf(“3==2是%d”,(b==c));printf(“3<2是%d”,(b2、”,(b!=c));}2021/7/304if(表达式)语句;其语义是:如果表达式的值为真,则执行其后的语句,否则不执行该语句。如:if(c3、io.h>main(){intchick,rabbit,n,m;scanf(“%d%d”,&n,&m);chick=(4*n-m)/2;rabbit=n-chick;if(m%2==14、5、a<06、7、b<0)printf(“Noanswer!”);elseprintf(“chicks:%d;rabbits:%d”,chick,rabbit);}必须保证chick和rabbit都是非负整数!2021/7/3092021/7/3010分析:1、先根据输入的三边长,判断能否构成三角形,若能,则转步骤2;若不能,则转步骤3;2、使用海伦公式求三角形面积3、输出提示:该三8、角形不存在。输入三角形的三边长,求三角形面积。2021/7/3011#include#includemain(){floata,b,c,s,area;scanf(“%f%f%f”,&a,&b,&c);printf(“a=%7.2f,b=%7.2f,c=%7.2f”,a,b,c);s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c));printf(“area=%7.2f”,area);}if((a+b>c)&&(b+c>a)&&(a+c>b))elseprintf(“不能构成三角形!”);逻辑9、运算符与表达式关系表达式只能描述单一条件,例如“x>=0”。如果需要描述“x>=0”、同时“x<10”,就要借助于逻辑表达式了。2021/7/30121、逻辑运算符极其优先次序C语言中提供了三种逻辑运算符:&&与运算10、11、或运算!非运算逻辑运算符与表达式2021/7/3013逻辑与,运算符为&&如图电路A——表示开关A合上;B——表示开关B合上;A&&B——表示灯亮;ABA&&B1111000100001表示真,0表示假,这是逻辑变量的取值,非真即假2021/7/3014逻辑或,运算符为12、13、如图电路A——表示开关A合上;B——表示开关B合上;A14、15、B——表示灯亮16、;ABA17、18、B1111010110001表示真,0表示假2021/7/3015逻辑非,运算符为!两队比赛篮球,变量A表示A队到场,!A表示A队不到场,变量B表示B队到场,!B表示B队不到场。这场球赛能够赛成,必须两队都到场。假定“能赛成”用逻辑变量C表示,则C=A&&B赛不成当然用!C表示,让D=!C,D表示赛不成则D=!A19、20、!B理解为A不到场或B不到场,球赛均无法进行。!(非)(高)算术运算符关系运算符&&21、22、赋值运算符(低)2021/7/3017不使用逻辑运算符可否判断三边长构成三角形?if(a+b>c)if(a+c>b)if(b+c>a){s=(a+b23、+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c));}if的嵌套【例4-1】写一程序,从键盘上输入某年份year(4位十进制数),判断其是否闰年。闰年的条件是:年份能被4整除、但不能被100整除;或者能被400整除。分析:1、从键盘输入任意一年份,类型为十进制整数2、判断是否是闰年3、给出结论:“是”或“否”继续对第2步进行任务细化2.1、判断该年份数字能否被4整除,并且不能被100整除若能,则是闰年,程序结束,否则进入2.22.2、判断该年份数字能否被400整除,若能,是闰年,程序结束,否则不是闰年,程序结束。程序优化首先将是
2、”,(b!=c));}2021/7/304if(表达式)语句;其语义是:如果表达式的值为真,则执行其后的语句,否则不执行该语句。如:if(c3、io.h>main(){intchick,rabbit,n,m;scanf(“%d%d”,&n,&m);chick=(4*n-m)/2;rabbit=n-chick;if(m%2==14、5、a<06、7、b<0)printf(“Noanswer!”);elseprintf(“chicks:%d;rabbits:%d”,chick,rabbit);}必须保证chick和rabbit都是非负整数!2021/7/3092021/7/3010分析:1、先根据输入的三边长,判断能否构成三角形,若能,则转步骤2;若不能,则转步骤3;2、使用海伦公式求三角形面积3、输出提示:该三8、角形不存在。输入三角形的三边长,求三角形面积。2021/7/3011#include#includemain(){floata,b,c,s,area;scanf(“%f%f%f”,&a,&b,&c);printf(“a=%7.2f,b=%7.2f,c=%7.2f”,a,b,c);s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c));printf(“area=%7.2f”,area);}if((a+b>c)&&(b+c>a)&&(a+c>b))elseprintf(“不能构成三角形!”);逻辑9、运算符与表达式关系表达式只能描述单一条件,例如“x>=0”。如果需要描述“x>=0”、同时“x<10”,就要借助于逻辑表达式了。2021/7/30121、逻辑运算符极其优先次序C语言中提供了三种逻辑运算符:&&与运算10、11、或运算!非运算逻辑运算符与表达式2021/7/3013逻辑与,运算符为&&如图电路A——表示开关A合上;B——表示开关B合上;A&&B——表示灯亮;ABA&&B1111000100001表示真,0表示假,这是逻辑变量的取值,非真即假2021/7/3014逻辑或,运算符为12、13、如图电路A——表示开关A合上;B——表示开关B合上;A14、15、B——表示灯亮16、;ABA17、18、B1111010110001表示真,0表示假2021/7/3015逻辑非,运算符为!两队比赛篮球,变量A表示A队到场,!A表示A队不到场,变量B表示B队到场,!B表示B队不到场。这场球赛能够赛成,必须两队都到场。假定“能赛成”用逻辑变量C表示,则C=A&&B赛不成当然用!C表示,让D=!C,D表示赛不成则D=!A19、20、!B理解为A不到场或B不到场,球赛均无法进行。!(非)(高)算术运算符关系运算符&&21、22、赋值运算符(低)2021/7/3017不使用逻辑运算符可否判断三边长构成三角形?if(a+b>c)if(a+c>b)if(b+c>a){s=(a+b23、+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c));}if的嵌套【例4-1】写一程序,从键盘上输入某年份year(4位十进制数),判断其是否闰年。闰年的条件是:年份能被4整除、但不能被100整除;或者能被400整除。分析:1、从键盘输入任意一年份,类型为十进制整数2、判断是否是闰年3、给出结论:“是”或“否”继续对第2步进行任务细化2.1、判断该年份数字能否被4整除,并且不能被100整除若能,则是闰年,程序结束,否则进入2.22.2、判断该年份数字能否被400整除,若能,是闰年,程序结束,否则不是闰年,程序结束。程序优化首先将是
3、io.h>main(){intchick,rabbit,n,m;scanf(“%d%d”,&n,&m);chick=(4*n-m)/2;rabbit=n-chick;if(m%2==1
4、
5、a<0
6、
7、b<0)printf(“Noanswer!”);elseprintf(“chicks:%d;rabbits:%d”,chick,rabbit);}必须保证chick和rabbit都是非负整数!2021/7/3092021/7/3010分析:1、先根据输入的三边长,判断能否构成三角形,若能,则转步骤2;若不能,则转步骤3;2、使用海伦公式求三角形面积3、输出提示:该三
8、角形不存在。输入三角形的三边长,求三角形面积。2021/7/3011#include#includemain(){floata,b,c,s,area;scanf(“%f%f%f”,&a,&b,&c);printf(“a=%7.2f,b=%7.2f,c=%7.2f”,a,b,c);s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c));printf(“area=%7.2f”,area);}if((a+b>c)&&(b+c>a)&&(a+c>b))elseprintf(“不能构成三角形!”);逻辑
9、运算符与表达式关系表达式只能描述单一条件,例如“x>=0”。如果需要描述“x>=0”、同时“x<10”,就要借助于逻辑表达式了。2021/7/30121、逻辑运算符极其优先次序C语言中提供了三种逻辑运算符:&&与运算
10、
11、或运算!非运算逻辑运算符与表达式2021/7/3013逻辑与,运算符为&&如图电路A——表示开关A合上;B——表示开关B合上;A&&B——表示灯亮;ABA&&B1111000100001表示真,0表示假,这是逻辑变量的取值,非真即假2021/7/3014逻辑或,运算符为
12、
13、如图电路A——表示开关A合上;B——表示开关B合上;A
14、
15、B——表示灯亮
16、;ABA
17、
18、B1111010110001表示真,0表示假2021/7/3015逻辑非,运算符为!两队比赛篮球,变量A表示A队到场,!A表示A队不到场,变量B表示B队到场,!B表示B队不到场。这场球赛能够赛成,必须两队都到场。假定“能赛成”用逻辑变量C表示,则C=A&&B赛不成当然用!C表示,让D=!C,D表示赛不成则D=!A
19、
20、!B理解为A不到场或B不到场,球赛均无法进行。!(非)(高)算术运算符关系运算符&&
21、
22、赋值运算符(低)2021/7/3017不使用逻辑运算符可否判断三边长构成三角形?if(a+b>c)if(a+c>b)if(b+c>a){s=(a+b
23、+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c));}if的嵌套【例4-1】写一程序,从键盘上输入某年份year(4位十进制数),判断其是否闰年。闰年的条件是:年份能被4整除、但不能被100整除;或者能被400整除。分析:1、从键盘输入任意一年份,类型为十进制整数2、判断是否是闰年3、给出结论:“是”或“否”继续对第2步进行任务细化2.1、判断该年份数字能否被4整除,并且不能被100整除若能,则是闰年,程序结束,否则进入2.22.2、判断该年份数字能否被400整除,若能,是闰年,程序结束,否则不是闰年,程序结束。程序优化首先将是
此文档下载收益归作者所有