C语言程序设计任务教程  教学课件 ppt 作者 彭德林 柴方艳 第4章

上传人:E**** 文档编号:89386374 上传时间:2019-05-24 格式:PPT 页数:30 大小:1.35MB
返回 下载 相关 举报
C语言程序设计任务教程  教学课件 ppt 作者 彭德林 柴方艳 第4章_第1页
第1页 / 共30页
C语言程序设计任务教程  教学课件 ppt 作者 彭德林 柴方艳 第4章_第2页
第2页 / 共30页
C语言程序设计任务教程  教学课件 ppt 作者 彭德林 柴方艳 第4章_第3页
第3页 / 共30页
C语言程序设计任务教程  教学课件 ppt 作者 彭德林 柴方艳 第4章_第4页
第4页 / 共30页
C语言程序设计任务教程  教学课件 ppt 作者 彭德林 柴方艳 第4章_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《C语言程序设计任务教程  教学课件 ppt 作者 彭德林 柴方艳 第4章》由会员分享,可在线阅读,更多相关《C语言程序设计任务教程  教学课件 ppt 作者 彭德林 柴方艳 第4章(30页珍藏版)》请在金锄头文库上搜索。

1、第4章 选择结构程序设计,主编:彭德林 柴方艳,C语言程序设计任务教程,C语言程序设计任务教程 第4章 选择结构程序设计,C语言程序设计任务教程 第4章 选择结构程序设计,认识什么是选择结构程序设计,初步了解选择结构的三种形式,并会画每种形式的流程图。,任务描述,任务1 认识选择结构程序设计,任务1 认识选择结构程序设计,选择结构,顾名思义,即根据条件的结果,来选择某一个分支进行执行。,选择结构有三种形式:单分支结构、双分支结构和多分支结构。,任务2 掌握if语句的典型应用,掌握if语句的三种典型应用:if语句单分支形式、if语句双分支形式和if语句多分支形式。灵活运用if语句,并会使用if语

2、句的嵌套形式。,任务描述,任务2 掌握if语句的典型应用,格式,执行过程,示例,if(表达式) 语句,#include “stdio.h” void main() int x , y ; x=20 ; y=10 ; if (xy) printf(“%d”,x); ,4.2.1 简单if语句形式,运行结果:20,没有”:”,4.2.1 简单if语句形式,说明,if后面必须紧跟一个圆括号,之间没有空格。,表达式必须用圆括号括起来。,圆括号和语句之间没有语句结束符号“;”,除非后面是一个空语句,如:if(a0) ; 。,如果表达式后面是一个语句组,该语句组应该用花括号“ ”括起来。,表达式一般是关系

3、表达式和逻辑表达式,也可以是其他表达式或数据类型。,4.2.1 简单if语句形式,例题,源代码,运行结果,输入一家三口人的年龄,若年龄之和小于等于70,则可以参加全家运动会。,30,28,3 pass!,/*example4-1*/ #include void main() int dad,mum,baby; scanf(“%d,%d,%d“, ,4.2.1 简单if语句形式,例题,源代码,运行结果,输入三个数a,b,c,要求按由小到大的顺序输出。,30,28,3 3,28,30,#include void main() int a,b,c,t; scanf(“%d,%d,%d”, ,格式,执

4、行过程,示例,if(表达式) 语句1 else 语句2,运行结果:10,#include “stdio.h” void main() int x , y ; x=20 ; y=10 ; if (xy) printf(“%d”,x); else printf(“%d”,y); ,4.2.2 标准形式 ifelse,4.2.2 标准形式 ifelse,说明,else和后面的语句2之间没有分号”;”,初学者应当注意。,if和else后面的语句后都有分号“;”,是ifelse内嵌语句所要求的,如果没有这个分号,就会出现语法错误。但是应该注意,不要误认为是两个语句(if语句和else语句),它们属于同一

5、个ifelse语句。,表达式可以是任意类型的表达式,也可以是任意类型的常量或者变量。值为非0 为真,值为0为假。,条件表达式也可以实现选择结构。例如: c=(ab)?a:b; 可以使用ifelse语句实现: if(ab) c=a;else c=b;。,if和else是成对出现的,else不能单独使用,必须和if配对使用。,else和后面的语句2之间没有分号”;”,初学者应当注意。,4.2.2 标准形式 ifelse,例题,源代码,运行结果,使用ifelse语句编程,学习成绩=60用A表示,60分以下的用B表示。,please input a score 88 88 belongs to A.,

6、/*example4-3*/ #include void main() int score;char grade; printf(“please input a scoren“); scanf(“%d“, ,4.2.2 标准形式 ifelse,例题,源代码,运行结果,使用ifelse语句编程,从键盘输入三角形的三边,判断能否构成三角形,如果能,求该三角形的面积。,please input three datas: 3.0,4.0,5.0 area=6.00,/*example4-4*/ #include #include void main() float a,b,c;double s,are

7、a; printf(“please input three datas:n“); scanf(“%f,%f,%f“, ,4.2.3 嵌套 if 语句形式,if嵌套的 几种变形,内嵌if,内嵌if,是这样吗?,必要时用 限定内嵌if范围,注意:else 总是与前面最近的if 配对。,4.2.3 嵌套 if 语句形式,通常情况下,在书写 嵌套格式时采用“向 右缩进”的形式,以 保证嵌套的层次结构 分明,可读性强。,在C语言中,不以书写格式区 分不同的语句,语句之间是通 过其逻辑关系加以区分的。 因此,在if语句中使用花 括号“”将同一层次的 语句部分括起来,可以使 得程序结构清晰、可读性强。 特别

8、对大型程序更加必要。 仅当有一条语句时,花括号 “”可以省略。,说明,建议,4.2.3 嵌套 if 语句形式,例题,源代码,运行结果,输入两个数并判断其大小关系。,Enter integer x,y:10,24 XY,#include void main() int x,y; printf(“Enter integer x,y:“); scanf(“%d,%d“, ,Enter integer x,y:10,7 XY,Enter integer x,y:10,10 X=Y,4.2.4 多分支 ifelse if 语句形式,格式,流程图,示例,if (表达式1) 语句1 else if (表达式

9、2) 语句2 else if (表达式3) 语句3 else if (表达式m)语句m else 语句n,if (number500) cost=0.15 ; else if (number300) cost=0.1 ; else if (number100) cost=0.075 ; else if (number50) cost=0.05 ; else cost=0 ;,必须有“ ;”,4.2.4 多分支 ifelse if 语句形式,说明,执行过程为:如果表达式1为真,则执行语句序列1;否则判断表达式2,若该表达式为真,则执行语句序列2;否则判断表达式3,若为真,则执行语句序列3;依此类

10、推,直到表达式n-1,若为真,则执行语句序列n-1,否则,执行语句序列n 。,语句序列1到语句序列n,只能有一组被执行。,4.2.4 多分支 ifelse if 语句形式,例题,源程序,运行结果,/*example4-6*/ #include void main() char c; printf(“please input a character:n“); c=getchar(); if(c=0 ,编写C程序,从键盘输入一个字符,判断该字符是否是数字、大写字母、小写字母、空格、换行符或者其他。,please input a character: # # is another,任务3 掌握 sw

11、itch语句的应用,掌握switch语句的使用方法,灵活使用break语句和continue语句,并能够正确使用break语句和continue语句。恰当使用switch语句和if语句的多分支结构,并加以区分。,任务描述,任务3 掌握 switch语句的应用,一般形式,switch(表达式e) case C1: 语句1; break; case C2: 语句2; break; . case Cn: 语句n; break; default:语句n+1; break; ,需要跳出switch语句时使用,任务3 掌握 switch语句的应用,执行过程,任务3 掌握 switch语句的应用,说明,C1

12、,C2,Cn是常量表达式,且值必须互不相同。,常量表达式起语句标号作用,必须用break跳出。,case后可包含多个可执行语句,且不必加 。,switch可嵌套。,多个case可共用一组执行语句。,表达式必须使用圆括号()括起来,不能为空。,标号后的冒号“:”不能省略,语句后的分号“;”也不能省略。,表达式的值必须是整数、字符或枚举值。,任务3 掌握 switch语句的应用,说明(续),常量表达式的类型应该与switch后面的表达式的值类型相同。,根据switch后面的表达式的值,可能在case后面的常量表达式中找到相同值,如果找不到,执行default后面的语句序列。,default语句可以

13、省略,但是default语句可以对不满足条件的情况加以说明,防止程序走空。,break语句可以使流程立即退出switch语句结构; 每个case后面的语句序列和break语句,可以不使用花括号 括起,括起来也没有错误。,switch语句可以没有break,也可以没有default 。,任务3 掌握 switch语句的应用,说明(续),switch语句找到入口后,执行完入口语句后,如果没有break语句,会将其后的所有case语句都执行一遍,直到整个switch结构结束;也就是说为找入口,判断工作只进行一次,此后,不再进行任何判断工作,故此,break语句很重要。,每个case和default语

14、句的书写顺序不固定,但是建议按照一定的顺序排列书写,最后写default语句。,break语句的作用:break语句可以使程序立即跳出switch语句结构。假设没有break语句,找到入口(即和表达式值相等的case后的常量表达式)后,执行完该条case语句后,会无条件地执行下一条case语句,此时不会进行检查相等比较,以及执行其后的所有case语句,直到遇到break语句,或者执行到switch语句中的最后一条语句。,任务3 掌握 switch语句的应用,/*example4-10*/ #include void main() int score,num,flag; char grade;

15、flag=1; scanf(“%d“, ,编写程序,对于输入一个给定的百分数成绩,输出用相应的A、B、C、D和E表示的等级成绩(每10分为一档,低于60均为E)。,运行结果: 87 The score is:87.The grade is B.,任务3 掌握 switch语句的应用,编写程序,从键盘输入星期几的第一个字母(大写形式)来判断是星期几,如果第一个字母相同,则判断第二个字母。,/*example4-8*/ #include void main() char c; printf(“please input frist letter:n“); scanf(“%c“, ,运行结果: please input frist letter: M MONDAY,Thank You!,

展开阅读全文
相关资源
相关搜索

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

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号