第7章 C控制语句:分支和跳转2

第7章 C控制语句:分支和跳转2

ID:37700602

大小:554.11 KB

页数:39页

时间:2019-05-29

第7章 C控制语句:分支和跳转2_第1页
第7章 C控制语句:分支和跳转2_第2页
第7章 C控制语句:分支和跳转2_第3页
第7章 C控制语句:分支和跳转2_第4页
第7章 C控制语句:分支和跳转2_第5页
资源描述:

《第7章 C控制语句:分支和跳转2》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第7章C控制语句:分支与跳转chenfei314@fzu.edu.cn本章内容关键字If、else、switch、continue、break、casedefaultgoto&&

2、

3、?函数getchar()putchar()分支程序设计if语句条件运算符?:switch语句分支程序设计举例分支程序设计在求解数学问题中常会遇到分段函数的问题,例如:2xx+≤1,0y=2xx−>3,0这类问题可以用if语句描述。if语句可分:单分支if语句双分支if语句多分支选择结构if语句的三种形式①if(expression)statement②If

4、(expression)statement1elsestatement2③If(expression1)statement1elseif(expression2)statement2elseif(expression3)statement3......elseif(expressionn-1)statementn-1elsestatementn多分支if语句if(number>500)cost=0.15;elseif(number>300)cost=0.10;elseif(number>100)cost=0.075;elseif(numbe

5、r>50)cost=0.05;elsecost=0;例:从键盘输入两个实数,输出其中最大者#includemain(){floata,b,max;printf("inputthetwonumbers:");scanf("%f%f",&a,&b);if(a>b)max=a;elsemax=b;printf("max=%f",max);}if语句的说明无论哪种形式,一条if语句,包括else或elseif子句,只算作一条语句if语句中的子句,可以是一条任何类型的语句,包括表达式语句、空语句、复合语句、控制语句子句末尾的分号

6、,只表示子句的结束,不表示if语句结束else子句都是可以没有的if语句举例if(x>y)/*y为x和y的较大值*/y=x;if(x>y)/*d为x和y之间的距离*/d=x-y;elsed=y-x;if(x>y);/*合法,但没有实际操作*/if语句的嵌套if语句的各子句都可以又是if语句应注意if-else的配对关系else总是与其上面最近的if配对可以用{}明确if-else的配对关系if(exp1)if(exp1)if(exp2){if(exp2)statement1statement1}elseelsestatement2sta

7、tement2例:写程序,判断某一年是否闰年。①、普通年能整除4且不能整除100的为闰年。(如2004年就是闰年,1900年不是闰年)②、世纪年能整除400的是闰年。(如2000年是闰年,1900年不是闰年)N-S图①、普通年能整除4且不能整除100的为闰年。(如2004年就是闰年,1900年不是闰年)②、世纪年能整除400的是闰年。(如2000年是闰年,1900年不是闰年)逻辑运算符!(非)、算术、关系、&&、

8、

9、、赋值高低【注意】逻辑运算符的“短路”现象组合规律(设a、b、c均为合法表达式)•a&&b&&c…自左向右运算,遇0停止运算,

10、表达式值为0•a

11、

12、b

13、

14、c…自左向右运算,遇1停止运算,表达式值为1•0&&a

15、

16、b不计算a但要计算b•1&&a

17、

18、b计算a,a==0要计算b,a==1不计算b•0

19、

20、a&&b计算a,a==0不计算b,a==1要计算b•1

21、

22、a&&b不计算a和b,表达式值为1条件运算符(ConditionalOperator)条件运算符?:条件表达式exp1?exp2:exp3先判断exp1若exp1为“真”,表达式的值为exp2的值若exp1为“假”,表达式的值为exp3的值举例,max=(x>y)?x:y;同:if(x>y)max=x;e

23、lsemax=y;例子:例:输入一个字符,判别它是否大写字母,如果是,将它转换成小写字母;如果不是,不转换。然后输出最后得到的字符。#includevoidmain(){charch;scanf("%c",&ch);ch=(ch>='A'&&ch<='Z')?(ch+32):ch;printf("%c",ch);}switch语句用于多分支选择switch(expression){caseconst-exp:statementscaseconst-exp:statements......caseconst-exp:st

24、atementsdefault:statements}switch语句的说明先求switch后表达式的值,若此值与某个case后的常量表达式的值相等,则跳转到这个case后的语句

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

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

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