C语言程序设计 教学课件 作者 李丽娟 等 第4章_分支结构.ppt

C语言程序设计 教学课件 作者 李丽娟 等 第4章_分支结构.ppt

ID:50083559

大小:274.00 KB

页数:31页

时间:2020-03-08

C语言程序设计 教学课件 作者 李丽娟 等 第4章_分支结构.ppt_第1页
C语言程序设计 教学课件 作者 李丽娟 等 第4章_分支结构.ppt_第2页
C语言程序设计 教学课件 作者 李丽娟 等 第4章_分支结构.ppt_第3页
C语言程序设计 教学课件 作者 李丽娟 等 第4章_分支结构.ppt_第4页
C语言程序设计 教学课件 作者 李丽娟 等 第4章_分支结构.ppt_第5页
资源描述:

《C语言程序设计 教学课件 作者 李丽娟 等 第4章_分支结构.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第三部分C语言的结构语句第4章选择结构4.1if语句4.1.1单分支if语句它的一般格式如下:if(表达式)语句;说明:对条件表达式进行判断,若其值为“真(非0)”时执行语句,若其值为“假(0)”时则跳过语句。其执行过程见流程图4.1。例如:设定学生成绩60分为及格分数线,用单分支if语句描述为:if(grade>=60)printf(“passed”);又如:x大于y就输出x,用单分支if语句描述为:if(x>y)printf(“%d”,x);4.1.2双分支if语句它的一般格式如下:if(表达式)语句1;else语句2;说明:与单分支if语句不同的是

2、在条件为“真(非0)”或“假(0)”时执行指定的不同的操作。对条件表达式进行判断,若其值为“真(非0)”时,就执行语句1;若其值为“假(0)”时,就执行语句2。其执行过程见流程图4.2。例如:给学生成绩划分:成绩大于或等于60分时输出“passed”,成绩小于60分时输出“failed”。用双分支if语句描述为:if(grade>=60)printf(“passed”);elseprintf(“failed”);在前面的章节还提到过与if/else结构密切相关的条件运算符?:,它是C语言中唯一的三目运算符(即有三个操作数)。对上面的两例用条件运算符改

3、写为:grade>=60?printf(“passed”):printf(“failed”);x>y?printf(“%d”,x):printf(“%d”,y);由此说明适当的语句修改条件运算符可以完成if/else结构相同的功能。说明:1.对于单分支和双分支if后面的“表达式”,一般为逻辑表达式或关系表达式,事实上表达式的类型不限于此,可以是任意的数值类型(包括整型、实型、字符型、指针型数据)。只要表达式的值为非0,就认为它为真;只要表达式的值为0,就认为它为假。例如:if(6)printf(“passed”);if(‘A’)printf(“%

4、d”,‘A’);这些都是合法的if语句。2.对于双分支if语句,else子句不能作为语句单独使用,它必须是if语句的一部分,与if配对使用。3.if语句后面的表达式之后不能增加分号,同时注意语句后面的分号不能遗漏。4.在if和else后面可以只包括一个内嵌的操作语句,也可以包括多个操作语句,此时务必用“{}”将几个语句括起来成为一个复合语句。例如:if(x>100){x--;s=+x;}else{x++;s=+x;}此时又要注意:在“{}”后面不能再添加分号,因为“{}”内是一个完整的复合语句,不需要再添加分号。4.1.3多分支if语句对于解决判断多个条件的

5、问题,可以使用if语句的嵌套,即在if语句中又包括一个或多个if语句。它的一般格式如下:if(表达式1)语句1;elseif(表达式2)语句2;elseif(表达式3)语句3;┆elseif(表达式m)语句m;else语句n;说明:开始执行该结构后,便依次去对多个条件进行判断测试,符合某一条件,则转去执行该条件下的操作,其它部分将被跳过;如果无一条件为“真(非0)”,就执行最后一个else所指定的操作,这个else可以看作“其它情形”。应当特别注意if与else的匹配关系:规则是从最内层开始,else总是与它上面最近的(未曾配对的)if配对。其执行过程见流程

6、图4.3。【例4-1】编程实现给一百分制成绩,要求输出成绩等级‘A’、‘B’、‘C’、‘D’、‘E’。90分以上为‘A’等,89~80分为‘B’等,79~70分为‘C’等,69~60分为‘D’等,60分以下为‘E’等。【源程序】main(){intgrade;printf("inputthegrade:");scanf("%d",&grade);if(grade>=90)printf("A");elseif(grade>=80)printf("B");elseif(grade>=70)printf("C");elseif(grade>=60)pr

7、intf("D");elseprintf("E");}4.2switch语句4.2.1switch语句对于解决实际生活中例如人口统计分类、工资统计分类、银行存款分类等等的多分支选择问题,采用多分支if语句(即if语句的嵌套)来处理固然可以,但是如果分支较多,则嵌套的if语句层数多,程序冗长而且会导致可读性降低。C语言提供了直接处理多分支选择的switch语句,它的一般格式如下:switch(表达式){case常量表达式1:语句1;case常量表达式2:语句2;┆case常量表达式n:语句n;default:语句m;}说明:其执行过程为进入switch

8、结构后,根据表达式的值从上到下去找与其相匹配的cas

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。