c语言学习教程-选择结构程序设计

上传人:第*** 文档编号:49189843 上传时间:2018-07-25 格式:PPT 页数:31 大小:480KB
返回 下载 相关 举报
c语言学习教程-选择结构程序设计_第1页
第1页 / 共31页
c语言学习教程-选择结构程序设计_第2页
第2页 / 共31页
c语言学习教程-选择结构程序设计_第3页
第3页 / 共31页
c语言学习教程-选择结构程序设计_第4页
第4页 / 共31页
c语言学习教程-选择结构程序设计_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《c语言学习教程-选择结构程序设计》由会员分享,可在线阅读,更多相关《c语言学习教程-选择结构程序设计(31页珍藏版)》请在金锄头文库上搜索。

1、第五章第五章选择结构程序设计选择结构程序设计 顺序结构顺序结构 分支结构分支结构 循环结构循环结构控制语句是能控制程序的流程,根据判断控制语句是能控制程序的流程,根据判断 决定运行什么不运行什么。决定运行什么不运行什么。程序的三种结构程序的三种结构分支流程控制语句分支流程控制语句 if if 语句语句 条件运算符条件运算符 switch switch 语句语句5.3.1 if5.3.1 if语句的三种形式语句的三种形式1. if(1. if(表达式表达式) ) 语句语句1 1表达式表达式语句语句Y YN N例:例:求求x x的绝对值的绝对值if (xy) if (xy) printf(“%d”

2、,xprintf(“%d”,x););x=-xx=-xx=A score;char grade; char grade;printfprintf(“(“请输入学生成绩:请输入学生成绩:” ”); ;scanf(“%d“, );if (score=90) if (score=90)grade=A; grade=A;else else if (score=75) if (score=75)grade=B ; grade=B ; else else if (score=60) if (score=60)grade=C; grade=C;else elsegrade=D; grade=D;printf

3、printf(“(“学生成绩是学生成绩是%d,d,等级是等级是%cn”, score,grade);cn”, score,grade); 5.3.2 if5.3.2 if语句的嵌套语句的嵌套在在if if语句中又包含一个或多个语句中又包含一个或多个if if语句。语句。if ( )if ( )if ( ) if ( ) 语句语句1 1else else 语句语句2 2 elseelseif ( ) if ( ) 语句语句3 3else else 语句语句4 4 内嵌内嵌ifif内嵌内嵌ifif注意:注意:elseelse总是与它上面的最近的总是与它上面的最近的if if配对配对if ( )if

4、 ( )if ( ) if ( ) 语句语句1 1 elseelseif ( ) if ( ) 语句语句2 2else else 语句语句3 3 内嵌内嵌ifif书写时,同一层次的书写时,同一层次的 if if 和和 else else 对齐,一目了然对齐,一目了然 。if ( )if ( )if ( ) if ( ) 语句语句1 1else elseif ( ) if ( ) 语句语句2 2else else 语句语句3 3 为实现程序设计者的企图,可以加花括号来为实现程序设计者的企图,可以加花括号来 确定配对关系。确定配对关系。if ( )if ( )if ( ) if ( ) 语句语句1

5、 1 elseelseif ( ) if ( ) 语句语句2 2else else 语句语句3 3 请思考:有一函数请思考:有一函数 :y=y=-1 -1 (x0) (x0) 编一程序,输入一个编一程序,输入一个x x值,输出值,输出y y值。值。 有以下几种写法,请大家判断哪些正确有以下几种写法,请大家判断哪些正确 ? 程序1:. . . . . .if (x=0 X0程序1结果 : x0 y=1对程序2:. . . . . .If (x=0)if (x0) y=1;else y=0;else y=-1; . . . . . . X=0X0 y=1对y=y=-1 -1 (x0) (x0) y

6、=y=-1 -1 (x0) (x0) 程序程序3 3:. . . . . . . . . . y=-1; y=-1;if (x!=0) if (x!=0)if (x0) y=1; if (x0) y=1;else y=0; else y=0; . . . . . . . . . . . . X0 y=1错y=y=-1 -1 (x0) (x0) 程序程序4 4:. . . . . . . . . . y=0; y=0;if (x=0) if (x=0)if (x0) y=1; if (x0) y=1; else y= -else y= - 1;1;. . . . . . . . . . . .

7、X=0X=0elseelse程序4结果 : x0 y=1错5.3.3 5.3.3 条件运算符条件运算符表达式表达式1 1? ? 表达式表达式2 2 : : 表达式表达式3 3 表达式表达式1 1真真( (非非0)0)取表达式取表达式2 2的值的值假假(0)(0)取表达式取表达式3 3的值的值如:求如:求b b的绝对值的绝对值 if (bA)aA)a=a+32; a=a+32; a= a= (a=A)? a+32 : a (a=A)? a+32 : a ; ;条件运算符的优先级大于赋值运算符条件运算符的优先级大于赋值运算符; ;结合方向自右而左;结合方向自右而左;ab? a : cd? c :

8、dab? a : cd? c : dab? a : ab? a : ( (cd? c : dcd? c : d) )例:用条件表达式求三个数a、b、c的最大值 Max= a,b两数最大值c ? a,b两数最大值 : c如何求a,b两数最大值? (ab)?a:bMax=(ab)?a:b)c ? (ab)?a:b) : ca,b两数最大值课堂练习课堂练习: : 执行下列语句后执行下列语句后,a,a的值是的值是_,b,b的值是的值是 _,c_,c的值是的值是_._.intint a,b,c,m=1,n=0; a,b,c,m=1,n=0; a=( - -m = = n+ ) ? - -m : a=(

9、- -m = = n+ ) ? - -m : +n;+n; b=m+;b=m+; c=- -n;c=- -n;a ab bm=m-1m=m-1 0=n0=n n=n+1n=n+1c c1 10 0mmn n0 00 01 11 1m=m-1m=m-1-1-1-1-1- -1 1a=-1a=-1-1-1b=mb=m m=m+1m=m+1-1-10 0n=n-1n=n-1 c=nc=n0 00 05.4 switch5.4 switch语句语句if语句是在二种情况中作出选择,一旦要在多 种情况中作出选择,就要层层嵌套if语句。 Switch语句可以对多分支进行选择。格式: switch (表达式)

10、 case 常量表达式1:语句1;case 常量表达式2:语句2;. . . . . .case 常量表达式n:语句n;default : 语句n+1;表达式表达式语句语句1 1语句语句2 2. . . .语句语句3 3语句语句n n若要每执行一条语句即跳出switch语句, 则使用break 格式: switch (表达式)case 常量表达式1:语句1;break;case 常量表达式2:语句2;break;. . . . . .case 常量表达式n:语句n;break;default : 语句n+1; 语句语句n+1n+1outout常量表达式常量表达式1 1 常量表常量表 达式达式2

11、 2常量表常量表 达式达式3 3常量表达式常量表达式n ndefaultdefaultbreakbreak breakbreak breakbreak breakbreak 例例5 5 根据学生成绩等级划分成绩段。根据学生成绩等级划分成绩段。 A A:分数在分数在9010090100之间之间;B B:分数在分数在75897589之间之间 C C:分数在分数在60746074之间;之间; D D:分数在分数在064064之间之间 main( ) char grade;scanf(“%c“,switch (grade) case A:printf(“90100n”); case B:printf(

12、“7589n”); case C:printf(“6074n”); case D:printf(“059n“); default :printf(“输入错误n”); break; break; break; break;讨论讨论: :测试变量测试变量chch( (字符类型)是数字、空白字符类型)是数字、空白字符字符还是其它字符。还是其它字符。 0909是数字是数字;换行、退格、空格都可当作空白字符换行、退格、空格都可当作空白字符。Switch(ch ) case 0: printf(“Its a digitn“); break;case 1: printf(“Its a digitn“); break;. . . . . .case 9: printf(“Its a digitn”); break;case : printf(“Its a white n“); break;case n: printf(“It

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 职业教育

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