已阅读5页,还剩17页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.,本章主讲赵家刚,第4章循环结构程序设计,.,程序设计的3种基本结构,(1)顺序结构(2)选择结构(3)循环结构顺序结构是指程序流程按先后顺序执行,只有执行了前一步,才能执行后一步。例如火车在轨道上行驶,只有过了上一站点才能到达下一站点。选择结构又称分支结构,是指程序流程可以分几条路径执行。例如在一个十字路口处,可以选择向东、南、西、北几个方向行走。循环结构又称重复结构,是指程序流程重复执行某一段代码。例如万米跑,围着足球场跑道不停地跑,直到满足条件时(25圈)才停下来。,.,语句A,语句B,顺序结构流程图,条件判断,选择结构流程图,条件判断,循环结构流程图,3种基本结构的流程图,.,【问题4-1】用户输入若干个分数,求所有分数的平均分。每输入一个分数后询问是否继续输入下一个分数,回答“yes”就继续输入下一个分数,回答“no”就停止输入分数。分析:该问题需要输入若干分数并求和,这是一个重复的过程,应使用循环结构解决。循环次数事先不确定,需根据应答“yes”、“no”来决定循环是否继续。,.,#ques4_1.pyendFlag=yessum=0.0count=0whileendFlag0=y:x=input(请输入一个分数:)sum=sum+xcount=count+1endFlag=raw_input(继续输入吗(yesorno)?)printn平均分是:,sum/count,.,4.1循环结构设计问题,【问题4-2】用户输入一个列表,求出列表中所有正偶数之和。分析:由于不知道用户输入的具体数据及个数,因此需要在循环结构中进行判断和累加。,.,#ques4_2.pyli=input(请输入一个列表:)sum=0forxinli:ifx0andx%2=0:sum+=xprintsum=,sum程序输入及运行结果:请输入一个列表:2,3,4,-5,6,12sum=24,.,4.2循环结构概述,循环结构是一种重复执行的程序结构。实际应用中,常会碰到一些需要重复执行的步骤,如级数求和、统计报表等等。例如:(1)计算1+2+3+100,这是一个级数求和问题,需要重复执行100次,对100个数依次进行累加。(2)假设1个班级中有n名同学,统计男同学和女同学各有多少名。该问题的求解需要重复执行n次,对每1个同学依次进行判断,同时统计男同学和女同学的人数。,.,4.2循环结构概述,(3)给定2个整数,求它们的最大公约数和最小公倍数。例如:给定6和9,求最大公约数时,循环过程从6依次递减至1,当循环到3时,判断得6和9都能被3整除,于是终止循环,求得最大公约数是3.;求最小公倍数时,循环过程从9依次递增至54,当循环到18时,判断得18同时能被6和9整除,于是终止循环,求得最小公倍数是18。Python提供了两种基本的循环结构语句while语句、for语句。,.,4.3while语句,while表达式:循环体,表达式,循环体,while表达式:循环体else:else子句,.,(1)while语句是一个条件循环语句,即首先计算表达式,根据表达式值的真、假来决定是否继续循环。(2)while语句的语法与if语句类似,要使用缩进来分隔子句。(3)while语句的条件表达式不需要用括号括起来,但是表达式后面必须有冒号。(4)使用while语句编程通常会遇到两种题型,一种是循环次数事先确定的问题;一种是循环次数事先不确定的问题。,说明:,.,4.3.1while语句解决不确定循环次数的问题,【分析】该问题使用循环结构解决,由于不确定用户即将输入几个正整数,因此属于不确定循环次数的问题。,【例4-1】编程从键盘输入若干正整数,求所有输入整数之和。当输入整数为负数时,结束该操作。,.,#Exp4_1.pyprint请输入若干正整数进行求和操作,当输入负数时结束:s=0 x=input(请输入一个整数:)whilex=0:s=s+xx=input(请输入一个整数:)print整数之和=,s,程序:,程序运行结果:请输入若干正整数进行求和操作,当输入负数时结束:请输入一个整数:10请输入一个整数:20请输入一个整数:30,.,【例4-2】编程从键盘输入若干个字符,一边输入一边输出,当输入“#”字符时终止该操作。,【分析】(1)本题使用循环结构解决,每次循环从键盘输入一个字符,直到输入为“#”字符时停止循环。(2)由于输入的字符个数无法确定,因此循环次数不确定。,.,a=raw_input(请输入字符,如果输入#号则结束输入操作:)whilea!=#:#判断输入的是否是井号print您输入的字符是:,a#打印输入的字符#以下语句是再次输入一个新的字符a=raw_input(请输入字符,如果输入#号则结束输入操作:)else:print输入结束,程序:,提问:,(1)循环结束后,变量a中的值是什么?(2)如果循环体中没有下面这条语句会怎么样?a=raw_input(请输入字符,如果输入#号则结束输入操作:),.,4.3.2while语句解决确定循环次数的问题,确定循环次数的问题是指循环之前可以预知循环即将执行的次数,为了控制循环次数,通常在程序中设置一个计数变量,每次循环,该变量进行自增或自减操作,当变量值自增到大于设定的上限值或者自减到小于设定的下限值时,循环自动结束。,.,4.3.2while语句解决确定循环次数的问题,【例4-3】编程计算1+2+3+100的值。分析:本题使用循环结构解决,每循环一次累加一个整数值,整数的取值范围为1100。由于整数的范围是确定的,因此循环次数也是确定的。,.,4.3.2while语句解决确定循环次数的问题,程序:#Exp4_3.pyi,s=1,0whilei=100:s=s+ii+=1print1+2+3+.+100=,s,框图:,.,4.3.2while语句解决确定循环次数的问题,分析:本题使用循环结构解决,每循环一次输出一个列表元素值,由于列表定义后,其长度是已知的,因此循环次数也是确定的。,【例4-4】依次输出列表中每个元素的值。,.,4.3.2while语句解决确定循环次数的问题,程序:#Exp4_4.pya_list=a,b,mpilgrim,z,examplea_len=len(a_list)i=0whileia_len:print列表的第,i+1,个元素是:,a_listii+=1,.,练习:,求1+3+5
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026广东肇庆高新区中小学赴高校招聘教师24人(第二轮编制)笔试备考题库及答案解析
- 2026浙江杭州市西湖区枫华府第学前教育集团招聘教师(非事业)笔试备考试题及答案解析
- 2026汉口学院校医院院长招聘1人(湖北)笔试模拟试题及答案解析
- 2026河南郑州高新区暖爱鹊群养老服务有限公司招聘社区养老护理员笔试备考试题及答案解析
- 2026四川攀枝花盐边县医共体北部片区招聘7人笔试模拟试题及答案解析
- 2026成都交通投资集团有限公司第二批次校园招聘14人笔试备考试题及答案解析
- 2026年吉安市青原区睿才人力资源有限公司见习人员招募考试备考题库及答案解析
- 珙县人民法院2026年第一次公开招聘聘用制司法辅助人员(1人)考试模拟试题及答案解析
- 唇腭裂患者全病程护理专家共识课件
- 2026版医院护理人文关怀实践规范专家共识课件
- 电信网络维护规范手册(标准版)
- 招标代理业务保密制度
- 加油站安全生产三项制度
- 中间业务收入培训课件
- 固井安全培训课件教学
- T-CI 1199-2025 风力发电机组全寿命周期火灾防范技术规程
- 2026年高中入团笔试题
- 国家安全青春同行
- 2025四川九州电子科技股份有限公司招聘人力资源管理岗测试笔试历年参考题库附带答案详解
- 《民用航空危险品运输管理规定》考试题库150题(含答案)
- 铝方通吊顶施工技术措施方案
评论
0/150
提交评论