《C语言程序设计》4-选择结构程序设计课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《《C语言程序设计》4-选择结构程序设计课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C语言程序设计 语言程序设计 选择 结构 程序设计 课件
- 资源描述:
-
1、第第4章章 选择结构程序设计选择结构程序设计提 纲n选择结构程序设计表示条件选择结构nIf语句单边选择结构双边选择结构多边选择结构If语句嵌套nSwitch语句n注释的使用良好的源程序书写风格n下次上机实验安排选择结构程序设计 要设计选择结构程序,要考虑两个方面的问题:一是在C语言中如何来表示条件,二是在C语言中实现选择结构用什么语句。在C语言中表示条件,一般用关系表达式或逻辑表达式,实现选择结构用if语句或switch语句。if语句if语句的一般格式 if(表达式表达式)语句组语句组1;else 语句组语句组2;注意:(1)if语句中的“表达式”必须用“(”和“)”括起来。(2)else子句
2、(可选)是if语句的一部分,必须与if配对使用,不能单独使用。(3)当if和else下面的语句组,仅由一条语句构成时,也可不使用复合语句形式(即去掉花括号)。if语句单边选择结构单边选择结构(缺省缺省else子句时子句时)if(表达式)语句;或:或:if(表达式)语句1;语句n;if语句单边选择结构【示例-1】:求|x|main()double x;scanf(“%f”,&x);if (xb)max=a;else max=b;printf(“max=%f”,max);if语句双边选择结构示例示例-3 输入任意三个整数num1、num2、num3,求三个数中的最大值。main()int num1
3、,num2,num3,max;printf(Please input three numbers:);scanf(%d,%d,%d,&num1,&num2,&num3);if(num1num2)max=num1;else max=num2;if(num3max)max=num3;printf(The three numbers are:%d,%d,%dn,num1,num2,num3);printf(max=%dn,max);if语句双边选择结构示例示例-3 思考:本案例中的第1个if语句,可不可以优化为不带else子句的形式?if语句双边选择结构示例示例-3 思考:本案例中的第1个if语句,
4、可不可以优化为不带else子句的形式?max=num1;if(num2max)max=num2;这种优化形式的基本思想是:首先取一个数预置为max(最大值),然后再用max依次与其余的数逐个比较,如果发现有比max大的,就用它给max重新赋值,比较完所有的数后,max中的数就是最大值。这种方法,对从3个或3个以上的数中找最大值的处理,非常有效。if语句双边选择结构多边选择结构(复合if语句)if (表达式1)语句组1;else if (表达式2)语句组2;else if(表达式m)语句组m;else 语句组n;if语句多边选择结构 if语句多边选择结构if语句多边选择结构示例-4 y=sign
5、(x)=1 x0 0 x=0 -1 x0#include main()double x;int y;scanf(“%f”,&x);if (x0)y=1;else if (x=0)y=0;else y=-1;printf(“sign(x)=%d”,y);if语句允许嵌套。所谓if语句的嵌套是指,在“语句组1”或(和)“语句组2”中,又包含有if语句的情况。if(表达式)if(表达式)语句1;else 语句2;else if(表达式)语句1;else 语句2;if语句嵌套与嵌套匹配原则示例-5 求sign(x)#include main()double x;int y;scanf(“%f”,&x)
6、;if (x=0)if (x0)y=1;else y=0;else y=-1;printf(“sign(x)=%d”,y);if语句嵌套与嵌套匹配原则 if语句嵌套时,else子句与if的匹配原则:(1)与在它上面、距它最近、且尚未匹配的if配对。(2)为明确匹配关系,避免匹配错误,强烈建议:将内嵌的if语句,一律用花括号括起来。if语句嵌套与嵌套匹配原则 思考:求sign(x),以下哪段程序是正确的?(1)if (x=0)if (x0)y=1;else y=0;else y=-1;(2)y=-1;if (x!=0)if (x0)y=1;else y=0;(3)y=0;if (x=0)if (
7、x0)y=1;else y=-1;if语句嵌套与嵌套匹配原则 利用逻辑运算能描述复杂条件的特点,可用其来表示较复杂的条件表达式。示例-6 输入一个年份,判断其是不是闰年。main()int year;printf(Please input the year:);scanf(%d,&year);if(year%4=0&year%100!=0)|(year%400=0)printf(%d is a leap year.n,year);else printf(%d is not a leap year.n,year);if语句复杂条件表达式 (1)if后面的“表达式”,除常见的关系表达式或逻辑表达式
展开阅读全文