




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第9讲,语句标号、goto语句及其构成的循环 while语句及其构成的循环,5.1 语句标号、goto语句及用goto语句构成的循环,5.2 while语句和用while语句构成的循环,5.6 break语句和continue语句在循环体中的作用,第五章 循环结构程序设计,循环结构是结构化程序设计的三种基本结构之一,也是最重要、最常用的一种基本结构。其特点是:在给定条件成立时,反复执行某程序段,直到给定条件不成立时为止。 给定的条件称为循环条件,反复执行的程序段称为循环体。,循环结构,C语言可以用如下语句实现循环: 1. 用goto语句和if语句构成循环。 2. 用while循环语句。 3. 用do-while循环语句。 4. 用for循环语句。,5.1 goto语句及用goto语句构成循环,1. 语句标号 语句标号就是给程序中的某一个语句定义的标识符,标号可以是任意合法的标识符,在语句标号和语句之间必须加一个冒号作为分隔符。 C程序中的任何一个可执行语句之前都可以加上语句标号。,例如:stop:printf(“ENDn“); 通常,语句标号只是用作goto语句的转向目标。如:goto stop; 如果程序中没有用goto语句改变程序的执行顺序,也就没有必要出现语句标号。,2. goto语句,goto语句称为无条件转向语句。 goto语句的一般形式为:goto 语句标号; goto语句的作用是把程序的执行转移到语句标号所在的位置,但这个语句标号必须与此goto语句在同一个函数之内。,goto语句不符合结构化程序设计的原则,因为无条件转向使得程序的结构没有规律、可读性差。对于初学者来说应尽量避免使用goto语句,但如果使用goto语句能够大大地提高程序的执行效率,也可以使用。,3 . 用goto语句构成的循环结构,#include “stdio.h“ main() int n= 0; char ch; printf(“input a stringn“); loop: ch= getchar(); n+; if(ch!=n) goto loop; n=n-1; /*不要字符n*/ printf(“%d“,n); ,goto语句通常与条件语句配合构成条件转移语句,用来实现构成循环或跳出循环等功能。 例5.1 统计从键盘输入的一行字符的个数。,例5.2 输入一组数据求和,#include main() int number, sum=0; loop: scanf(“%d“, ,从键盘输入完一组数据后,再输入一个0作为结束输入数据的标志。,5.2 while循环语句,由while语句构成的循环也称”当”循环。 while循环的一般形式如下: while(表达式) 循环体语句,图5.1 while循环流程图,while语句的执行过程是: 先计算while表达式的值,当表达式的值为非零时,便执行循环体语句,之后再计算该表达式的值,由此构成循环,直到有一次求得表达式的值为零时才结束循环,并继续执行循环体语句之外的后续语句。,图5.1 while循环流程图,#include main() int n=0; char ch; printf(“input a string:n“); ch= getchar(); while(ch!=n) n+; ch= getchar(); printf(“%d“,n); ,用while语句改写例5.1的程序,题目:统计从键盘输入的一行字符的个数。,说明:(1)while语句中的表达式可以是任意合法的C表达式。 (2)如果循环体语句是复合语句,一定要用 括起来。 (3) 在循环体语句中应该包含能够使循环趋于结束的操作,以避免出现死循环。,例5.3 编程求1+2+3+100的值。,这是一个求100个数的累加和问题。所加的加数从1变化到100,因此我们可以在循环体中设计一个整型变量i,使它的初值为1,每循环一次使i的值增1,一直循环到i的值超过100为止,用这个办法就解决所需的加数问题。 要解决求累加和的问题,还要再设计一个变量sum用来存放这100个数的和值,先求0+1的和并将其放在sum中,然后把sum中的数加上2再存放在sum中,依次类推。 在这里,sum累加的过程要放在循环体中,由计算机来判断所加的数是否已经超过100。,main() int i, sum; i=1; sum=0; w
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 铅锌烟灰提铟项目可行性研究报告
- 防汛抗旱知识培训内容课件
- 园林古建筑工程公司劳动协议
- 科研合作协议关键条款
- 品牌专卖店加盟代理协议6篇
- 2025年定金担保合同以及反担保合同3篇
- 转租房合同范文2篇
- 指甲微环境监测-洞察及研究
- 部门负责人讲安全课课件
- 情感分析舆情预警机制-洞察及研究
- 人防标识标牌落实方案(3篇)
- (新教材)2025年秋期人教版一年级上册数学全册核心素养教案(教学反思无内容+二次备课版)
- 癌痛的三个阶梯给药原则
- DB31∕T 1487-2024 国际医疗服务规范
- 防灾减灾安全课件
- 2026高考物理一轮复习-第十章-第54课时-专题强化:测电阻的其他几种方法-专项训练【含答案】
- 多囊卵巢综合征的超声诊断
- 售后索赔流程管理办法
- 2025至2030中国化妆品检测行业市场深度调研及投资策略及有效策略与实施路径评估报告
- 妊娠期高血压疾病心血管风险综合管理专家共识解读 2
- 2025 高中地理核心素养之综合思维培养(气候与建筑)课件
评论
0/150
提交评论