C语言-4选择结构.pptx

上传人:rrsccc 文档编号:9115408 上传时间:2021-02-03 格式:PPTX 页数:40 大小:417.77KB
返回 下载 相关 举报
C语言-4选择结构.pptx_第1页
第1页 / 共40页
C语言-4选择结构.pptx_第2页
第2页 / 共40页
C语言-4选择结构.pptx_第3页
第3页 / 共40页
C语言-4选择结构.pptx_第4页
第4页 / 共40页
C语言-4选择结构.pptx_第5页
第5页 / 共40页
点击查看更多>>
资源描述

《C语言-4选择结构.pptx》由会员分享,可在线阅读,更多相关《C语言-4选择结构.pptx(40页珍藏版)》请在三一文库上搜索。

1、第四章 选择结构程序设计,回顾,表达式是操作数和运算符的集合 关系运算符运用测试两个操作数之间的关系 条件结构解决了程序中需要根据不同情况进行判断的情况 逻辑运算符用于组合多个条件( c1=getchar(); if (是大写?) c2=c1+32; else c2=c1-32; printf(“%c”,c2); ,输入:A 输出:a,输入:b 输出:B,从键盘输入任意一字母,是小写输出对应的大写字母,是大写输出对应的小写字母。,课程引入,9,第四 选择结构程序设计,if语句,4.1,switch语句,4.2,4.3,C语言程序设计第一章 C语言概述 SCS-SWPU,程序举例,C语言程序设计

2、算法的描述 SCS-SWPU,10,4.1 if 语句,if语句的三种形式: 1简单分支 if 语句,if(表达式) 语句;,例如: if(xy) printf(d,x);,例1:输入两个数,输出其中较大的数 用单分支if语句实现 程序分析: 1、定义程序中需要使用的变量:a,b,max 2、从键盘输入两个值:a,b 思考: a,b的数据类型应该定义成什么? 用scanf函数 还是 getchar函数? 3、初始化变量max=a,与变量b比较,存储较 大值; 4、输出最大值,C语言程序设计算法的描述 SCS-SWPU,11,4.1 if 语句举例,C语言程序设计算法的描述 SCS-SWPU,1

3、2,if (表达式) 语句1 else 语句2,2双重分支if语句,例如:if (xy) printf(“d“,x); else printf(“d”,y);,4.1 if 语句,例2:输入两个数,输出其中较大的数 用双分支if语句实现 程序分析: 1、定义程序中需要使用的变量:a,b,max 2、从键盘输入两个值:a,b 3、用if-else双分支实现: if(ab) max=a; else max=b; 4、输出最大值,C语言程序设计算法的描述 SCS-SWPU,13,4.1 if 语句举例,例3:从键盘输入一个字符,判断该字符是否是英文字符 程序分析: 1、判断英文字符的条件: ch=a

4、,C语言程序设计算法的描述 SCS-SWPU,14,4.1 if 语句课堂练习,15,多重条件判断,有胡萝卜吗?,有黄瓜吗?,制作胡萝卜沙拉,有,有,制作黄瓜沙拉,制作黄瓜沙拉,没有,没有,C语言程序设计算法的描述 SCS-SWPU,16,4.1 if 语句多分支if,3、多分支if if(表达式1)语句1 else if(表达式2) 语句2 else if(表达式3) 语句3 else if(表达式m)语句m else 语句n,猜 数 程 序,C语言程序设计算法的描述 SCS-SWPU,17,4.1 if 语句if语句的嵌套,if语句的嵌套 在if语句中又包含一个或多个if语句称为if语句的

5、嵌套。 形式: if() if() 语句1 else 语句2 else if() 语句3 else 语句4,内嵌if,C语言程序设计算法的描述 SCS-SWPU,18,if(表达式1) if(表达式2) 语句1; else 语句2;,if(表达式1) if(表达式2) 语句1; else 语句2;,4.1 if 语句if语句的嵌套,分析下列语句,if(表达式1) if(表达式2) 语句1; else 语句2; else 语句3;,匹配原则:else 总是与它前面最近的尚未与 其他else匹配的if配对。,C语言程序设计算法的描述 SCS-SWPU,19,例4:有一个函数,算法1: 输入x 若x

6、=10,则y=3*x-1 输出y,算法2: 输入x 若x1,则y=x 否则: 若x10,则y=2*x-1 否则,则y=3*x-1 输出y,4.1 if 语句多分支if,C语言程序设计算法的描述 SCS-SWPU,20,#include stdio.h void main() double x,y; printf(input x:n); scanf(%lf, ,4.1 if 语句多分支if,C语言程序设计算法的描述 SCS-SWPU,21,4.1 if 语句使用注意事项,(1)if后的表达式: 值为0,按“假”处理 值为非0,按“真”处理 例如: if(a1) printf(O.K.n); if

7、 (1) printf(O.K.n); if (a=5) printf(Hello!.n); if (a= =5) printf(O.K.n);,C语言程序设计算法的描述 SCS-SWPU,22,(2)if的条件句为一条单语句或复合语句 请分析一下if语句的条件句 设:a=1,b=2;,if (a b) a+; b+; printf(“%d,%d”,a,b),if (a b) a+; b+; printf(“%d,%d”,a,b),if (a b) a+; else a = 0; b = 10; printf(“%d,%d”,a,b);,4.1 if 语句使用注意事项,输入学生成绩等级,输出等

8、级对应的分数范围 A: 90分以上 B:8089分 C:7079分 D:6069分 E:60分以下 其他无效的分数输入时,输出提示“分数有误”,课堂练习,C语言程序设计算法的描述 SCS-SWPU,23,C语言程序设计算法的描述 SCS-SWPU,24,4.1 if 语句,if语句的缺点?,Switch语句可以解决,25,第四 选择结构程序设计,if语句,4.1,switch语句,4.2,4.3,C语言程序设计第一章 C语言概述 SCS-SWPU,程序举例,switch 结构,26,printf(“这是迈克尔,身高 180cm,加利福尼亚第 12 大街”);,printf(“这是丹尼尔,身高

9、193cm,现居住地不明,1998 年 12 月 12 日在佛罗里达被捕”);,printf(“这是吉姆,身高 175cm, 墨西哥州海鸥路弗罗拉公寓,于 2003 年 11 月 1 日在新泽西因抢银行被捕”);,default:,printf(“未发现匹配项。对不起!”);,停止搜索,停止搜索,停止搜索,停止搜索,警察记录,不是,这是吉姆,身高 175cm, 墨西哥州海鸥路弗罗拉公寓, 于 2003 年 11 月 1 日在新泽西因抢银行被捕,不是,是,C语言程序设计算法的描述 SCS-SWPU,27,4.2 switch语句,switch实现多分支语句,switch(表达式) case 常量

10、1:语句组1; break; case 常量2:语句组2; break; case 常量n:语句组n; break; default:语句组n+1; break; ,注意:表达式只能是整型、字符型或枚举型,C语言程序设计算法的描述 SCS-SWPU,28,例题1 学生成绩等级关系如下:A: 90分以上,B:8089分,C:7079分,D:6069分,E:60分以下,要求编程:从键盘输入学生成绩等级,则输出成绩范围。 switch(grade) case A: printf(“90100n); break; case B: printf(“8089n); break; case C: print

11、f(“7079n); break; case D: printf(“6069n”); break; case E: printf(“060n”); break; default : printf(Errorn); break; ,4.2 switch语句,1、case后面的各常量或常量表达式的值不能相同。一般为整型、字符型或枚举型。 2、执行完一个case后面的语句后,对后续csae继续执行,不再进行判断,直到遇break语句或 右花括号为止。,C语言程序设计算法的描述 SCS-SWPU,29,4.2 switch语句注意事项,int a=7; switch(a) case 7: printf

12、(“sevenn”); case 8: printf(“eightn);break; default: printf(“errorn”); ,(3)各个case和default的出现次序不影响执行结果 (4) case后的多条语句可不打括号,C语言程序设计算法的描述 SCS-SWPU,30,int a=7; switch(a) default: printf(“errorn”); case 7: putchar(7); printf(“sevenn”);break; case 8: printf(“eightn);break; ,4.2 switch语句注意事项,31,if语句,4.1,swi

13、tch语句,4.2,4.3,C语言程序设计第一章 C语言概述 SCS-SWPU,程序举例,4.3 程序举例,C语言程序设计算法的描述 SCS-SWPU,32,有以下程序 main() int a=0,b=0,c=0,d=0; if(a=1) b=1; else d=3; c=2; printf(“%d,%d,%d,%dn”,a,b,c,d); ,程序输出 A)0,1,2,0 B) 0,0,2,3 C) 1,1,2,0 D) 编译有错,有以下程序 main() int a=0,b=0,c=0,d=0; if(a=1) b=1; else d=3; c=2; printf(“%d,%d,%d,%d

14、n”,a,b,c,d); ,程序输出 A)0,1,2,0 B) 0,0,2,3 C) 1,1,2,0 D) 编译有错,4.3 程序举例,例1 输入两个实数,按数值由小到大的次序输出这两个数 main() float a,b,t; scanf(“f,f”, printf( 请输入成绩n); scanf(%d, ,4.3 程序举例,C语言程序设计算法的描述 SCS-SWPU,37,#include void main() int score, i; printf( “请输入成绩n”); scanf(“%d”, ,用switch语句实现,4.3 程序举例,从屏幕获取两个变量的值和一个算术运算符(+、-、*、/、%),对这两个变量进行相应的算术运算,输出计算结果,对于其他运算符给出错误信息。 分析: 定义变量,如:x,y,z和字符变量ch; 获取变量的值; 用swith函数判断运算符的种类,进行相应运算; 输出结果,C语言程序设计算法的描述 SCS-SWPU,38,4.3 程序举例,C语言程序设计算法的描述 SCS-SWPU,39,与本章相关的英语词汇,Thank You !,

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

当前位置:首页 > 社会民生


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