第3章基本程序设计1.ppt

上传人:p** 文档编号:565364 上传时间:2023-11-02 格式:PPT 页数:36 大小:1.04MB
下载 相关 举报
第3章基本程序设计1.ppt_第1页
第1页 / 共36页
第3章基本程序设计1.ppt_第2页
第2页 / 共36页
第3章基本程序设计1.ppt_第3页
第3页 / 共36页
第3章基本程序设计1.ppt_第4页
第4页 / 共36页
第3章基本程序设计1.ppt_第5页
第5页 / 共36页
第3章基本程序设计1.ppt_第6页
第6页 / 共36页
第3章基本程序设计1.ppt_第7页
第7页 / 共36页
第3章基本程序设计1.ppt_第8页
第8页 / 共36页
第3章基本程序设计1.ppt_第9页
第9页 / 共36页
第3章基本程序设计1.ppt_第10页
第10页 / 共36页
亲,该文档总共36页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《第3章基本程序设计1.ppt》由会员分享,可在线阅读,更多相关《第3章基本程序设计1.ppt(36页珍藏版)》请在第壹文秘上搜索。

1、第三章第三章模式模式1模式模式2模式模式3备注备注ifif(exprexpr)语句语句S1 S1 ifif(exprexpr)语句语句S1S1elseelse 语句语句S2S2ifif(expr1expr1)语句语句S1S1else ifelse if (expr2expr2)语句语句S2S2else ifelse if (expr3expr3)语句语句S3S3 elseelse 语句语句SnSn语句语句S1,S2,S3Sn可以是简单语可以是简单语句,也可以是句,也可以是复合语句。复合语句。如如果是复合语句果是复合语句语句,必须用语句,必须用一对花括号一对花括号“”括起来括起来3.1 3.1

2、选择结构程序设计选择结构程序设计if if语句的三种基本形式语句的三种基本形式模式模式1:单选择单选择if语句语句语句格式语句格式:if(条件条件)语句组语句组;语句语句N条件条件Y 功能:判断条件为真时执功能:判断条件为真时执行语句行语句,否则否则跳过跳过语句语句模式模式2:2:双选择双选择if if语句语句5.1 if语句语句语句格式语句格式:if(条件条件)语句组语句组1;else 语句组语句组2;功能:判断条件为真时执行语句组功能:判断条件为真时执行语句组1,否则否则执行语句组执行语句组2 条件条件 语句语句1 语句语句2YN模式模式3:3:多条件的多条件的if if语句语句语句格式语

3、句格式:if(条件条件1)语句语句1;else if(条件条件2)语句语句2;else if(条件条件3)语句语句3;else if(条件条件m)语句语句m;else 语句语句n;语句语句1N条件条件1Y条件条件2条件条件nYY语句语句2 语句语句3语句语句nNN功能:功能:从多组语句中选择满足条从多组语句中选择满足条件的语句组执行。件的语句组执行。6(1)三种形式的)三种形式的if语句中,语句中,if关键词后面均为关键词后面均为表达式。通常为表达式。通常为关系表达式关系表达式或或逻辑表达式逻辑表达式。也。也可以是其它表达式,如可以是其它表达式,如赋值表达式赋值表达式,甚至也可,甚至也可以是以

4、是一个变量一个变量。例如:例如:if(a=5)语句;或语句;或 if(b)语句;均为合法语句;均为合法用法用法(2)if 后的条件判断表达式一定用圆括号括后的条件判断表达式一定用圆括号括起来,语句之后一定起来,语句之后一定 要用分号。要用分号。使用使用if语句时注意:语句时注意:7(3)三种形式中)三种形式中,若为一组语句一定用若为一组语句一定用 括括起来,组成起来,组成复合语句复合语句。但需注意。但需注意 后不可用后不可用“;”号。号。例如:例如:if (ab)a+;b+;else a=0;b=10;8有一函数有一函数编写一个程序,输入编写一个程序,输入x输出输出y值。值。0,10,00,1

5、xxxy main()int x,y;scanf(“%d”,&x);if(x=0)if(x0)y=1;else y=0;else y=-1;printf(“x=%dty=%dn”,x.y);方法二:方法二:运行:23X=23,y=19一般形式:一般形式:if (表达式表达式1)if(表达式表达式2)语句语句1 内嵌内嵌 else 语句语句 2 if 语句语句 else if (表达式表达式3)语句语句3 内嵌内嵌 else 语句语句4 if 语句语句if 语句中又含有语句中又含有if 语句的形式称为语句的形式称为 if 语句的语句的嵌套。嵌套。10说明:说明:每一个每一个 if 与与 else

6、 相匹配,也可能不与相匹配,也可能不与 else 相相匹配;但是匹配;但是每一个每一个else 必须与一个必须与一个 if 相匹配相匹配。else与与if 匹配的原则是匹配的原则是:最后的最后的else总是与它上总是与它上面面最近的最近的if 配对。配对。多分支及分支嵌套应采用缩排方式,以增加多分支及分支嵌套应采用缩排方式,以增加程序的可读性。程序的可读性。11例:例:if(a=b)if(b=c)printf(“a=b=c”);else printf(“a!=b”);修改:修改:if(a=b)if(b=c)printf(“a=b=c”);else printf(“a!=b”);实现实现if e

7、lse 正确配对方法:加正确配对方法:加 12例例 考虑下面程序输出结果考虑下面程序输出结果:main()int x=100,a=10,b=20;int v1=5,v2=0;if(ab)if(b!=15)if(!v1)x=1;else if(v2)x=10;/*x=-1;*/printf(“%d”,x);结果:结果:100结果:结果:-1x=-1;例:体型判断例:体型判断按按“体指数体指数”对肥胖程度进行划分:对肥胖程度进行划分:体指数体指数t=w/h2 (体重(体重w单位为公斤,身高单位为公斤,身高h单位为米)单位为米)当当t 18时,为低体重;时,为低体重;当当18 t 25时,为正常体重

8、;时,为正常体重;当当25 t 27时,为超重体重;时,为超重体重;当当t 27时,为肥胖。时,为肥胖。编程从键盘输入你的身高编程从键盘输入你的身高h和体重和体重w,判断你的体重属,判断你的体重属于何种类型。于何种类型。例例#include main()float h,w,t;printf(Please enter h,w:);scanf(%f%f,&h,&w);t=w/(h*h);if(t=18&t=25&t=27)printf(t=%ftToo fat!n,t);当当t 18时,为低体重;时,为低体重;当当18 t 25时,为正常体重;时,为正常体重;当当25 t 27时,为超重体重;时,

9、为超重体重;当当t 27时,为肥胖。时,为肥胖。#include main()float h,w,t;printf(Please enter h,w:);scanf(%f%f,&h,&w);t=w/(h*h);if(t 18)printf(t=%ftLower weight!n,t);else if(t 25)printf(t=%ftStandard weight!n,t);else if(t 27)printf(t=%ftHigher weight!n,t);elseprintf(t=%ftToo fat!n,t);例例当当t 18时,为低体重;时,为低体重;当当18 t 25时,为正常体重

10、;时,为正常体重;当当25 t 27时,为超重体重;时,为超重体重;当当t 27时,为肥胖。时,为肥胖。运输公司对用户计算运费。运输公司对用户计算运费。路程()越远,每公里运费越低。标准如下:路程()越远,每公里运费越低。标准如下:没有折扣没有折扣 折扣折扣 折扣折扣 折扣折扣 折扣折扣 折扣折扣设每公里每吨货物的基本运费为,货物重为,设每公里每吨货物的基本运费为,货物重为,距离为,折扣为,则总运费的计算公式为:距离为,折扣为,则总运费的计算公式为:*()()ifif(s250)d=0;(s250)d=0;elseelse ifif(s500)d=2;(s500)d=2;else ifelse

11、 if(s1000)d=5;(s1000)d=5;elseelse ifif(s2000)d=8;(s2000)d=8;elseelse ifif(s3000)d=10;(s3000)d=10;elseelse d=15;d=15;1.1.嵌套条件语句实现嵌套条件语句实现折扣的折扣的“变化点变化点”都是都是250250的倍数的倍数 在横轴上加一种坐标,在横轴上加一种坐标,c c的值为的值为s/250s/250。c c代表代表250250的倍数。的倍数。,无折扣;无折扣;,;,;,;,;,。考虑用考虑用switchcase switchcase 结构结构switch(c)case 0:d=0;b

12、reak;case 1:d=2;break;case 2:case 3:d=5;break;case 4:case 5:case 6:case 7:d=8;break;case 8:case 9:case 10:case 11:d=10;break;default:d=15;break;2.switch2.switch语句实现语句实现20它们大大增加程序的分支,使逻辑关它们大大增加程序的分支,使逻辑关系显得混乱,不易维护,易出错系显得混乱,不易维护,易出错2122i=1;for(;i=5;i+)printf(“%dn”,i);for(i=1;i=5;i+)printf(“%dn”,i);23表

13、达式表达式2省略,则不判断条件,循环无终止进行下去省略,则不判断条件,循环无终止进行下去表达式表达式3省略,则应另设法保证循环的结束省略,则应另设法保证循环的结束 此功能一定在循环体中完成此功能一定在循环体中完成 例:例:for(i=1;i=5;)printf(“%dn”,i);i+;(3)表达式)表达式1和表达式和表达式3可为逗号表达式可为逗号表达式,因此可以对因此可以对 多个变量赋初值及修改多个变量赋初值及修改 例如:例如:for(i=1,j=10;i=j;i+,j-)k=i+j;原则上表达式原则上表达式2不可省略,若省略需要在循环体中用不可省略,若省略需要在循环体中用其它手段(其它手段(

14、break、goto等)结束循环等)结束循环。24(4 4)for for 语句的循环体还可为另一个循环语句语句的循环体还可为另一个循环语句for(i=1;i=2;i+)for(j=1;j=2;j+)printf(“%3d”,i+j);printf(“n”);output:2 3 3 4例如:例如:do-whiledo-while语句语句 dodo 语句语句;while(while(表达式表达式);功能:先执行循环体,然后计算表达式值,功能:先执行循环体,然后计算表达式值,其值若为真(非其值若为真(非0)则继续执行循环体,直)则继续执行循环体,直到表达式为假时为止。到表达式为假时为止。【例例】

15、whilewhile和和do-whiledo-while循环的比较循环的比较 (1)void main()int i,sum=0;scanf(%d,&i);while(i=10)sum=sum+i;i+;printf(“sum=%dn”,sum);(2)void main()int i,sum=0;scanf(%d,&i);do sum=sum+i;i+;while(i=10);printf(sum=%dn,sum);循环至少循环至少执行一次执行一次循环没有循环没有被执行被执行输入:输入:12输出:输出:sum=12输入:输入:12输出:输出:sum=0三种循环语句的比较三种循环语句的比较1

16、1for for 语句与语句与whilewhile语句执行过程相同,但语句执行过程相同,但forfor语语句简洁、清晰,它将初始条件、判断条件和循环句简洁、清晰,它将初始条件、判断条件和循环变量的在一行书写,显得直观、明了。变量的在一行书写,显得直观、明了。2 2while while 和和do-whiledo-while语句的循环控制变量初始化语句的循环控制变量初始化是在循环语句之前完成,而是在循环语句之前完成,而forfor语句循环变量的初语句循环变量的初始化是在始化是在forfor中(表达式中(表达式1 1)中,也可以在)中,也可以在forfor语句语句前实现。前实现。3 3forfor语句和语句和whilewhile语句是判断条件后执行循环体;语句是判断条件后执行循环体;而而do-whiledo-while是先执行循环体后判断条件,无论条是先执行循环体后判断条件,无论条件是否满足都要执行一次循环体。件是否满足都要执行一次循环体。选择三种循环的一般原则选择三种循环的一般原则如果循环次数已知,用如果循环次数已知,用for如果循环次数未知,用如果循环次数未知,用while如果循环体至

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 大学课件

copyright@ 2008-2023 1wenmi网站版权所有

经营许可证编号:宁ICP备2022001189号-1

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第壹文秘网,我们立即给予删除!