if语句switch语句选择结构程序举例.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《if语句switch语句选择结构程序举例.ppt》由会员分享,可在线阅读,更多相关《if语句switch语句选择结构程序举例.ppt(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、教学内容if语句switch语句选择结构程序举例 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望例如,某一单位要给职工增加工资,它的规定是:工例如,某一单位要给职工增加工资,它的规定是:工资低于资低于1000元的职工,每人增加工资元的职工,每人增加工资100元,超过元,超过1000元元的职工暂不增加工资。的职工暂不增加工资。选择条件:选择条件:工资低于工资低于1000元吗元吗数据处理:数据处理:是是 增加工资增加工资100元,元,否则不增加工资否则不增加工资如果,
2、增加工资的规定是:工资低于如果,增加工资的规定是:工资低于1000元的职工,元的职工,每人增加工资每人增加工资200元,超过元,超过1000元的职工增加工资元的职工增加工资100元。元。选择条件:工资低于选择条件:工资低于1000元吗元吗数据处理:数据处理:是是 增加工资增加工资200元元 否则否则 增加工资增加工资100元元 在在C语言中,当需要根据语言中,当需要根据选择条件来确定选择条件来确定所要做所要做(执行)哪一项(执行)哪一项数据处理数据处理的情况,这样的程序结构,被的情况,这样的程序结构,被称为称为选择(分支)结构。选择(分支)结构。在在C语言中表示选择条件,一般用:语言中表示选择
3、条件,一般用:关系表达式关系表达式、逻辑表达式逻辑表达式 二二、实现选择结构用什么语句、实现选择结构用什么语句:C语言中实现选择结构所用语句:语言中实现选择结构所用语句:if 语句语句 switch 语句语句 在在C语言中,设计选择(分支)结构程序要解决语言中,设计选择(分支)结构程序要解决的问题:的问题:一一、如何表示选择条件:、如何表示选择条件:1.1.第一种形式第一种形式 (1 1)语句格式:语句格式:if(if(表达式表达式)语句语句 语句中的表达式必须用单括号语句中的表达式必须用单括号 “(”和和 “)”括起括起来。表达式后面来。表达式后面语句也可使用复合语句。语句也可使用复合语句。
4、(2 2)语句功能:如果表达式的值为真语句功能:如果表达式的值为真(T)(T),则执行其,则执行其后的语句,后的语句,否则不执行该语句。否则不执行该语句。在在C C语言中,没有逻辑型数据类型。当表达式的值为语言中,没有逻辑型数据类型。当表达式的值为任何非零值,表示表达式的条件成立;当表达式的值为任何非零值,表示表达式的条件成立;当表达式的值为零值,表示表达式的条件不成立。零值,表示表达式的条件不成立。6.16.1 if if 语语 句句 2.2.第二种形式第二种形式 (1)(1)语句格式:语句格式:if(if(表达式表达式)语句语句1 1;else else 语句语句2 2;说明:说明:els
5、eelse子句(可选)是子句(可选)是 if if 语句的一部分,必语句的一部分,必须与须与 if if 配对使用,不能单独使用配对使用,不能单独使用 (2)(2)语句功能:如果表达式的值为真语句功能:如果表达式的值为真(T)(T),则执行,则执行语句语句1 1,否则执行语句,否则执行语句2 2。例例6.1 6.1 输入两个整数,输出其中的大数。输入两个整数,输出其中的大数。void main()int a,b,max;printf(n input two numbers:);scanf(%d%d,&a,&b);max=a;if(bmax)max=b;printf(max=%d,max);例例
6、6.2 6.2 输入两个整数,输出其中的大数。输入两个整数,输出其中的大数。main()int a,b;printf(input two numbers:);scanf(%d%d,&a,&b);if(ab)printf(max=%dn,a);else printf(max=%dn,b);例例6.3从键盘输入两个数,按升序输出两个数从键盘输入两个数,按升序输出两个数#include main()float a,b,t;scanf(%f,%f,&a,&b);if(ab)t=a;a=b;b=t;printf(%5.2f,%5.2fn,a,b);例例6.4 输入任意三个数,按从小到大的顺序排序输出。输
7、入任意三个数,按从小到大的顺序排序输出。main()int a,b,c,temp;printf(Please input three numbers:);scanf(%d,%d,%d,&a,&b,&c);if(ab)temp=a;a=b;b=temp;if(bc)temp=b;b=c;c=temp;if(ab)temp=a;a=b;c=temp;printf(Three nbers after sorted:);printf(%d,%d,%dn,a,b,c);3条并列单条并列单 分支语句分支语句 3.3.第三种形式第三种形式 (1)语句格式语句格式 if (表达式表达式1)语句组语句组1 el
8、se if (表达式表达式2)语句组语句组2 else if (表达式表达式3)语句组语句组3 else if(表达式表达式4)语句组语句组4 else 语句组语句组5 若若 语句组语句组5 又是一条又是一条 if 语句,整个语句最少语句,整个语句最少是一个是一个6个分支的多分支个分支的多分支 if 语句。语句。(2 2)多分支多分支 if if 语句的执行过程语句的执行过程 当当“表表达达式式1”的的值值不不等等于于0时时,则则执执行行语语句句组组1 1,然后转向下一条语句;,然后转向下一条语句;否否则则,当当“表表达达式式2”的的值值不不等等于于0时时,执执行行语句组语句组2,转向下一条语
9、句;,转向下一条语句;再再否否则则,当当“表表达达式式3”的的值值不不等等于于0时时,执执行语句组行语句组3,转向下一条语句;,转向下一条语句;再再否否则则,当当“表表达达式式4”的的值值不不等等于于0时时,执执行语句组行语句组4,转向下一条语句;,转向下一条语句;再否则,执行语句组再否则,执行语句组5,转向下一条语句;,转向下一条语句;4.if4.if语句说明语句说明 (1)(1)在三种形式的在三种形式的ifif语句中,条件表达式通常是语句中,条件表达式通常是逻辑表达式或关系表达式,逻辑表达式或关系表达式,但也可以是其它表达式,但也可以是其它表达式,如赋值表达式等,甚至也可以是一个变量。如赋
10、值表达式等,甚至也可以是一个变量。(2)(2)在在ifif语句的三种形式中,所有的语句应为单语句的三种形式中,所有的语句应为单个语句,如果要想在满足条件时执行一组个语句,如果要想在满足条件时执行一组(多个多个)语语句,则必须把这一组语句用句,则必须把这一组语句用 括起来组成一个复括起来组成一个复合语句。但要注意的是在合语句。但要注意的是在 之后不能再加分号。之后不能再加分号。例例 6.5 输入输入+*-/,输出对应的单词。输出对应的单词。#include main()char ch;ch=getchar();if(ch=+)printf(plusn);else if(ch=-)printf(m
11、inusn);else if(ch=*)printf(multiplyn);else if(ch=/)printf(dividen);else printf(errorn);例例6.6 输入任意三个整数,求三个数中的最大值。输入任意三个整数,求三个数中的最大值。main()int n1,n2,n3,max;scanf(%d,%d,%d,&n1,&n2,&n3);if(n1n2)max=n1;else max=n2;if (n3max)max=n3;printf(The three numbers are:”);printf(“%d,%d,%dn,n1,n2,n3);printf(max=%dn
12、,max);max=n1;if(n2max)max=n2;程序运行情况如下:程序运行情况如下:Please input three nbers:11,22,18 The three nbers are:11,22,18 max=22本例中的第本例中的第1个个if语句,可优化为如下不带语句,可优化为如下不带else子句的子句的形式:形式:max=n1;if(n2max)max=n2;优化的基本思想是:优化的基本思想是:首先取一个数预置为首先取一个数预置为max(最大值),然后再用(最大值),然后再用max依依次与其余的数逐个比较,如果发现有比次与其余的数逐个比较,如果发现有比max大的,就用它大
13、的,就用它给给max重新赋值,比较完所有的数后,重新赋值,比较完所有的数后,max中的数就是最大中的数就是最大值。值。5.if 语句与条件运算符语句与条件运算符 如果在条件如果在条件语句中,只句中,只执行行单个的个的赋值语句句时,常可使用常可使用条件表达式来条件表达式来实现。不但使程序。不但使程序简洁,也提高了运行效率。,也提高了运行效率。例例 6.7 输入任意三个整数,求三个数中的最大值。输入任意三个整数,求三个数中的最大值。main()int n1,n2,n3,max;scanf(%d,%d,%d,&n1,&n2,&n3);max=n1n2?n1:n2;max=(n3max)?n3:max
14、;printf(max=%dn,max);max=(n1n2)?(n1n3)?n1:n3):(n2n3)?n2:n3);6 6ifif语句的嵌套与嵌套匹配原则语句的嵌套与嵌套匹配原则 (1)if(1)if 语句嵌套,是指,在语句嵌套,是指,在“语句语句1”或(和)或(和)“语语句句2”中,又包含有中,又包含有 if 语句的情况。语句的情况。ifif 语句嵌套时,语句嵌套时,elseelse子句与在它上面、距它最近、子句与在它上面、距它最近、且尚未匹配的且尚未匹配的 if if 配对。配对。例如:例如:if(ab)s=s+t;else if(a=b)t=5;/*语句语句2是是 if 语句语句*/
15、else t=2*s;例例 6.8 输入任意三个整数,求三个数中的最大值。输入任意三个整数,求三个数中的最大值。main()int n1,n2,n3;scanf(%d,%d,%d,&n1,&n2,&n3);if(n1n2)if(n1n3)printf(max=%dn,n1);else printf(max=%dn,n3);else if (n2 n3)printf(max=%dn,n2);else printf(max=%dn,n3);例例6.9 if 语句的嵌套使用语句的嵌套使用 main()int a,b,c,d,x;a=b=c=0;d=20;if(a)d=d-10;else if(d+2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- if 语句 switch 选择 结构 程序 举例
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内