版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、C语言程序设计语言程序设计(B)软件工程教研室软件工程教研室*1第第5讲讲 语句及其执行顺序语句及其执行顺序 *2n内容内容程序的语句程序的语句语句执行顺序语句执行顺序(goto语句语句)简单的条件语句简单的条件语句条件语句常见错误条件语句常见错误条件语句的嵌套条件语句的嵌套条件语句的简化条件语句的简化*35.1程序的语句程序的语句n在程序中,实现一个操作步骤的指令在程序中,实现一个操作步骤的指令,是程序的最小构成单位,称为语句,是程序的最小构成单位,称为语句(statement)n可以认为可以认为C语言程序是由语句构成的。语言程序是由语句构成的。n例如上次课介绍的程序:例如上次课介绍的程序:
2、*4#includeint main() float radius, perimeter, area;/申明变量的语句 printf(“请输入圆的半径: ”);/显示信息的语句 scanf(“%f”, &radius);/输入变量值的语句 perimeter = 2 * 3.14 * radius;/计算赋值语句 area = 3.14 * radius * radius; printf(周长 = %.2fn, perimeter); printf(面积 = %.2fn, area); return 0;/返回调用处*55.1程序的语句程序的语句n除除return语句外,其他是已经学习
3、过的两语句外,其他是已经学习过的两种语句:种语句:表达式语句:表达式后面加一个分号表达式语句:表达式后面加一个分号;变量申明语句:说明变量。变量申明语句:说明变量。nC语言中,分号语言中,分号(;)实际为一个空语句。表达实际为一个空语句。表达式后面跟一个空语句,形成表达式语句。式后面跟一个空语句,形成表达式语句。n马上我们还会学习新的语句。马上我们还会学习新的语句。*65.1程序的语句程序的语句n并非所有语句都是以分号并非所有语句都是以分号(;)结束,但初结束,但初学者常犯的错误是忘记应有的分号;学者常犯的错误是忘记应有的分号;n语句之间通过规定的符号分隔,并非依语句之间通过规定的符号分隔,并
4、非依赖换行符或者空格。但不要在一行上写赖换行符或者空格。但不要在一行上写多条语句。多条语句。*75.1程序的语句程序的语句n块语句:使用一对块语句:使用一对 将多条语句围住将多条语句围住,语法上这个,语法上这个 围住的范围相当于一围住的范围相当于一条语句,称为块条语句,称为块(block)语句;语句;n在可以使用或者需要使用一条语句的在可以使用或者需要使用一条语句的地方,也可以使用一个块语句地方,也可以使用一个块语句n显然,块语句是可以嵌套的。显然,块语句是可以嵌套的。*85.1程序的语句程序的语句n对块语句来说,最重要的是要明白,对块语句来说,最重要的是要明白,在一个在一个块块中定义的中定义
5、的变量变量,只可在该块,只可在该块范围内使用。当程序执行到范围内使用。当程序执行到离开该块离开该块时,块中定义的时,块中定义的变量变量就会就会自动消失自动消失(被销毁了)。被销毁了)。*95.1程序的语句程序的语句 /*块语句1开始*/ int age; printf(“请输入你的年龄:”); scanf(“%d”, &age); printf(“您输入的年龄是:%d。”, age); /*块语句2开始*/ double weight; weight = 35.56; /这里可以使用age、weight变量 /*块语句2结束*/ /在这里,已经不能用weight变量/*块语句1结束*/
6、*105.1程序的语句程序的语句n小结小结语句是构成语句是构成C程序的基本单位程序的基本单位空语句空语句表达式语句表达式语句申明语句申明语句块语句块语句变量的有效范围变量的有效范围*115.2语句执行顺序语句执行顺序(goto语句语句)n在程序中,语句依次执行。例:在程序中,语句依次执行。例:#include int main() printf(“1.this is line one.n”); printf(“2.this is line two.n”); printf(“3.this is line three.n”); return 0;*125.2语句执行顺序语句执行顺序(goto语句语
7、句)n执行结果为:执行结果为:1.this is line one.2.this is line two.3.this is line three.n可以验证上面的结论。可以验证上面的结论。*135.2语句执行顺序语句执行顺序(goto语句语句)n程序的语句是依次执行的。程序的语句是依次执行的。n但这不能满足所有需要。有时候需要但这不能满足所有需要。有时候需要改变语句的执行顺序。改变语句的执行顺序。*145.2语句执行顺序语句执行顺序(goto语句语句)n可以在程序中为语句指定标号,然后用可以在程序中为语句指定标号,然后用goto语句转移到有标号的语句。语句转移到有标号的语句。n标号的命名规则
8、同变量名标号的命名规则同变量名n直接将标号写在语句前面,用直接将标号写在语句前面,用“:”分隔分隔label1: printf(“this line has a label.n”);.goto label1;*155.2语句执行顺序语句执行顺序(goto语句语句)n程序举例:程序举例:#include int main() printf(“1.this is line one.n”); goto l3; printf(“2.this is line two.n”);l3: printf(“3.this is line three.n”); return 0;*165.2语句执行顺序语句执行顺序
9、(goto语句语句)n执行结果为:执行结果为:1.this is line one.3.this is line three.ngoto语句功能很强大,但在程序中尽语句功能很强大,但在程序中尽量不要用。量不要用。*175.3简单的条件语句简单的条件语句n在程序中改变执行顺序往往是有条件的。在程序中改变执行顺序往往是有条件的。例如,当气温高于例如,当气温高于30就输出就输出“开空调开空调”;否则输出;否则输出“不开空调不开空调”。n这里需要在程序中判断语句执行的条这里需要在程序中判断语句执行的条件:气温的高低。件:气温的高低。*185.3简单的条件语句简单的条件语句nC语言中,用语言中,用if语
10、句判断条件。格式为语句判断条件。格式为if (表达式表达式) 表达式值不是表达式值不是0就执行的语句;就执行的语句; else 表达式值为表达式值为0就执行的语句;就执行的语句;此处无此处无”; ;”此处无此处无”; ;”*195.3简单的条件语句简单的条件语句nif语句中的表达式,常为语句中的表达式,常为关系表达式关系表达式。n关系表达式的值要么是关系表达式的值要么是0,要么是,要么是1。n当然,当然,if语句中的条件表达式也可以不是关语句中的条件表达式也可以不是关系表达式。系表达式。n把判断相等的把判断相等的关系关系表达式误写成表达式误写成赋值赋值表达式表达式,是初学者最易犯的错误。,是初
11、学者最易犯的错误。*205.3简单的条件语句简单的条件语句n举例:编写一个程序,要求输入当前举例:编写一个程序,要求输入当前气温。如果温度大于气温。如果温度大于30 ,则输出,则输出“开空调开空调”;否则输出;否则输出“不开空调不开空调”*215.3简单的条件语句简单的条件语句#include int main() int temp; printf(“输入当前温度(输入当前温度( ):):”); scanf(“%d”, &temp); if(temp 30) printf(“开空调开空调.n”); else printf(“不开空调不开空调.n”); return 0;*225.3简单
12、的条件语句简单的条件语句例:下面的程序会输出何种结果?例:下面的程序会输出何种结果?#include int main() int temp = 0; if(temp = 0) printf(“温度为温度为0度度.n”); else printf(“温度不是温度不是0度度.n”); return 0;*235.3简单的条件语句简单的条件语句n练习:编写程序,提示输入一个整数练习:编写程序,提示输入一个整数,判断是奇数还是偶数,并将结果输,判断是奇数还是偶数,并将结果输出。出。*245.3简单的条件语句简单的条件语句nif和和else后都只能有一条语句;后都只能有一条语句;n思考:如果满足条件时
13、,要执行两条思考:如果满足条件时,要执行两条语句;不满条件时也执行两条语句,语句;不满条件时也执行两条语句,怎么办?怎么办?n使用块语句。使用块语句。*255.3简单的条件语句简单的条件语句nifelse语句语法可以写成:语句语法可以写成:if (表达式表达式)else这里可以写多条语句,当表达这里可以写多条语句,当表达式值不是式值不是0 0时执行时执行这里可以写多条语句,当表达这里可以写多条语句,当表达式值是式值是0 0时执行时执行*265.3简单的条件语句简单的条件语句n初学者容易忘记用初学者容易忘记用 将需要一起执行的语句围住。下面的代码会出现将需要一起执行的语句围住。下面的代码会出现编
14、译时错误:编译时错误:#include int main() int temp = 0; if(temp = 0) printf(“当前温度为:当前温度为:%dn”,temp); printf(“当前温度为当前温度为0度时显示此行度时显示此行.n”); else printf(“当前温度为:当前温度为:%dn”,temp); printf(“当前温度不为当前温度不为0度时显示此行度时显示此行.n”); return 0;*275.3简单的条件语句简单的条件语句n正确的写法:正确的写法:#include int main() int temp = 0; if(temp = 0) printf(“
15、当前温度为:当前温度为:%dn”,temp); printf(“当前温度为当前温度为0度时显示此行度时显示此行.n”); else printf(“当前温度为:当前温度为:%dn”,temp); printf(“当前温度不为当前温度不为0度时显示此行度时显示此行.n”); return 0;*285.3简单的条件语句简单的条件语句n条件语句可以只包含条件语句可以只包含单边条件单边条件。即仅说明。即仅说明满足条件时该做什么,不需指出条件不满满足条件时该做什么,不需指出条件不满足时该做什么。即:无足时该做什么。即:无else部分。部分。if (表达式表达式)*295.3简单的条件语句简单的条件语句
16、#include int main() int temp = 0; if(temp = 0) printf(“当前温度为:当前温度为:%dn”,temp); printf(“当前温度为当前温度为0度时显示此行度时显示此行.n”); return 0;*305.3简单的条件语句简单的条件语句n练习:练习: 输入两个实数,按代数值输入两个实数,按代数值由小到大的顺序输出这两个数。由小到大的顺序输出这两个数。*31n解题思路:解题思路:只需要做一次比较,然后进行一次交只需要做一次比较,然后进行一次交换即可换即可用用if语句实现条件判断语句实现条件判断关键是怎样实现两个变量值的互换关键是怎样实现两个变
17、量值的互换5.3简单的条件语句简单的条件语句*32#include int main() float a,b,t; scanf(%f,%f,&a,&b); if(ab) t=a; a=b; b=t; printf(%5.2f,%5.2fn,a,b); return 0;将将a和和b的值互换的值互换如果如果ab*33#include int main() float a,b,t; scanf(%f,%f,&a,&b); if(ab) t=a; a=b; b=t; printf(%5.2f,%5.2fn,a,b); return 0;选择结构,用选择结构,用if语句
18、实现的语句实现的*345.4条件语句常见错误条件语句常见错误n常见错误小结:常见错误小结:在在if或者或者else后面不适当使用分号后面不适当使用分号(;)条件表达式错误(相等关系表达式误写条件表达式错误(相等关系表达式误写成赋值表达式)成赋值表达式)(注意数值表达式注意数值表达式)忘记用忘记用 组合组合if或或else后执行的语句。即后执行的语句。即:if和和else后只能有一条语句。如果多条后只能有一条语句。如果多条,就用一条块语句组合多条语句。,就用一条块语句组合多条语句。*355.5条件语句的嵌套条件语句的嵌套n条件语句中可以使用块语句条件语句中可以使用块语句n条件语句也可以处于块语句
19、中条件语句也可以处于块语句中n由此可知,条件语句中可以嵌套其由此可知,条件语句中可以嵌套其他条件语句。他条件语句。n例如:例如:*365.5条件语句的嵌套条件语句的嵌套if(条件条件1) if(条件条件2) /条件条件1满足且条件满足且条件2满足满足 else /条件条件1满足但条件满足但条件2不满足不满足 else /条件条件1不满足不满足 if(条件条件3) /条件条件1不满足但满足条件不满足但满足条件3 else /条件条件1不满足且条件不满足且条件3不满足不满足 按照这样的写法,按照这样的写法,根据程序逻辑需要根据程序逻辑需要可以随意嵌套。可以随意嵌套。*375.5条件语句的嵌套条件语
20、句的嵌套n例:教材例:教材P81编程题(编程题(1)n闰年定义闰年定义1。能被。能被4整除但不能被整除但不能被100整除的年整除的年2。能被。能被400整除的年整除的年*385.5条件语句的嵌套条件语句的嵌套n条件可以写成:条件可以写成:if(能被(能被4整除)整除) if(能被(能被100整除)整除) if(能被(能被400整除)整除) 是闰年是闰年; else 不是闰年不是闰年; else 是闰年是闰年;else 不是闰年不是闰年;*395.6条件语句的简化条件语句的简化n形如形如if (表达式表达式1) 表达式表达式2; else 表达式表达式3;n的条件语句可以改写成:的条件语句可以改写成:表达式表达式1 ?表达式表达式2 : 表达式表达式3; ? : 为新的运算符。需要三个操作数,称为三为新的运算符。需要三个操作数,称为三元运算符。以上表达式称为条件
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 林业组建实施方案
- 核查清理工作方案
- 运维课程体系建设方案
- 2025年生物科技行业业绩提升策略方案
- 2025年农业项目资金筹款与效益分析方案
- 招聘工作方案评价
- 工服制作工作方案
- 蛇场建设方案
- 安全规章制度的制定流程
- 2025年适航检测行业政策红利解读及中小企业机遇报告
- 2026届新疆乌鲁木齐市高三三模英语试题(含答案)
- 2026年4年级下册试卷大全及答案
- 2026年5级起重工试题及答案
- 2026江苏南京大学档案馆、校史博物馆内勤招聘建设考试参考题库及答案解析
- 20G520-1-2钢吊车梁(6m-9m)2020年合订本
- 米粉切割机-毕业设计
- GB/T 27021.1-2017合格评定管理体系审核认证机构要求第1部分:要求
- GA/T 947.2-2015单警执法视音频记录系统第2部分:执法记录仪
- GA 1409-2017警用服饰硬式肩章
- 2021年山东省鲁信投资控股集团有限公司校园招聘笔试试题及答案解析
- 大拉机连续退火机介绍
评论
0/150
提交评论