新编c语言程序设计教程(本科)第5章

新编c语言程序设计教程(本科)第5章

ID:34037273

大小:210.17 KB

页数:48页

时间:2019-03-03

新编c语言程序设计教程(本科)第5章_第1页
新编c语言程序设计教程(本科)第5章_第2页
新编c语言程序设计教程(本科)第5章_第3页
新编c语言程序设计教程(本科)第5章_第4页
新编c语言程序设计教程(本科)第5章_第5页
资源描述:

《新编c语言程序设计教程(本科)第5章》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第5章选择结构程序设计第5章选择结构程序设计5.1if语句5.2switch语句5.3goto语句5.4程序设计举例第5章选择结构程序设计5.1if语句5.1.1单分支if语句格式:if(条件表达式)语句 功能:先计算条件表达式的值,如果条件表达式的值为真(非0),执行语句(选择体),否则执行if语句的下一条语句。 NS图:见图5-1之(a)。第5章选择结构程序设计图5-1第5章选择结构程序设计例如:(1)如果x>0,输出x。 if(x>0)printf(″x=%f″,x);(2)如果a等于b,输出″a=b″。 if(a

2、==b)printf(″%s″,″a=b″);第5章选择结构程序设计说明:(1)条件表达式必须用小括号括起,同时注意区分作为条件的表达式与作为数值的表达式。(2)if语句中要选择执行的语句称为选择体,选择体从语法上只能是一条语句,如果选择体需多条语句描述,必须采用复合语句。 第5章选择结构程序设计例如:如果x>0,求x的平方根。 (1)将结果放入变量y中;(2)输出x的平方根。 if(x>0) {y=sqrt(x);printf(″平方根=%f″,y);}(3)不管选择体多么复杂,包含多少条语句,if语句逻辑上是一条语句

3、,后面的双分支if语句、多分支if语句、switch语句、循环语句均是逻辑上的一条语句。第5章选择结构程序设计x1例5–1计算y,y。 x1提示:x等于1函数无定义。 程序如下:/*程序5-1,求函数值*/main(){floatx;floaty;printf(″请输入x:″);scanf(″%f″,&x);if(x!=1) {y=(x+1)/(x-1);printf(″x=%6.2f,y=%6.2f″,x,y);}}输入数据:1.2运行结果:x=1.20,y=11.00第5章选择结构程序设计5.1.2双分支i

4、f语句格式:if(条件表达式)语句1else语句2功能:先计算条件表达式的值,如果条件表达式的值为真(非0),执行语句1(选择体1),否则执行语句2(选择体2),if语句执行完后执行if语句的下条语句。NS图:见图5-1之(b)。第5章选择结构程序设计例如:(1)如果x>0,输出x大于0,否则输出x小于等于0。 if(x>0)printf(″x大于0″);elseprintf(″x小于等于0″);(2)如果a等于b,输出a等于b,否则输出a不等于b。 if(a==b)printf(″a等于b″);elseprintf(“

5、a不等于b″);第5章选择结构程序设计(3)求两个数x、y的最大值max。 if(x>y)max=x;elsemax=y;(4)判断整数i的奇偶性。 if(i%2==0)printf(″偶数″);elseprintf(″奇数″);第5章选择结构程序设计(1)双分支if语句形式上相当于单分支if语句扩展else分支而来,else分支称为else子句,else子句不能单独存在。(2)在其它高级语言中特别强调else子句前不能有分号,C语言中else子句前必有分号。(3)选择体如为多条语句同样必须采用复合语句。(4)可

6、采用条件运算等价实现,从而以表达式的形式参与运算。例如,上例中三个双分支if语句用条件运算描述:①(x>0)?printf(″x大于0″):printf(″x小于等于0″) ②(a==b)?printf(″a等于b″):printf(″a不等于b″) ③(x>y)?max=x:max=y第5章选择结构程序设计(5)单分支if语句可认为是双分支if语句缺省else子句的特殊情况,一条双分支if语句可用两条单分支if语句实现。例如,前例中三条双分支if语句改用单分支if语句实现:①if(x>0)printf(″x大于0″);

7、if(x<=0)printf(″x小于等于0″);②if(a==b)printf(″a等于b″);if(a![KG-*2]=b)printf(″a不等于b″);③if(x>y)max=x;if(x<=y)max=y;第5章选择结构程序设计x1x1例5–2计算y,yx1x1/*程序5-2,求函数值*/main(){floatx;floaty;printf(″请输入x:″);scanf(″%f″,&x);if(x>1) y=x+1;elsey=x-1;printf(″x=%6.2f,y=%6.2f″,x,y)

8、;}输入数据:1.2运行结果:x=1.20,y=2.00第5章选择结构程序设计例5–3输入两个数,求两个数的最大值、最小值。 数据分析:输入量:两个数x、y,float输出量:最大值max、最小值min,float算法分析:①输入两个数x、y②比较两个数x、y大小 如果x>y,max=x,min=y如果x

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

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

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