




已阅读5页,还剩56页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.,循环结构,.,DoLoop之“当”循环,形式1:形式2:DoWhileDo语句块(循环体)语句块(循环体)LoopLoopWhile,当条件为真(true)时循环!,.,DoLoop循环示例1,PrivatesubForm_click()Dimnum%num=1Dowhilenum=10PrintnumNum=num+1LoopEndsub,PrivatesubForm_click()Dimnum%num=1DoPrintnumNum=num+1Loopwhilenum=10Endsub,.,S=1+2+3+100,PrivateSubForm_Click()DimiAsIntegeri为累加数DimsumAsIntegersum为累加和i=1sum=0DoWhileinText2.Text=sumEndSub,.,5.2For循环语句,For循环语句是计数型循环语句,用于控制循环次数已知的循环结构。语句形式如下:For循环变量=初值To终值Step步长循环体Next循环变量,.,For循环变量=初值To终值Step步长循环体Next循环变量,(1)“循环变量”:必须为数值型,取值范围在初值和终值之间。(2)“初值”、“终值”:都是数值型,可以是数值表达式。(3)“步长”:是数值型,可以是数值表达式。步长不能为0。如果步长是1,则Step1可以省略不写。(4)“循环体”:在For和Next之间一条或多条语句,他们将被执行指定的次数。(5)Next后面的循环变量与For语句中的循环变量必须相同。,.,使用For循环计算1+3+5+99的值,PrivateSubCommand1_Click()DimiAsInteger,nAsIntegerDimsumAsIntegersum=0Fori=1to99step2sum=sum+iNextiPrintsumEndSub,For循环变量=初值To终值Step步长循环体Next循环变量,.,使用For循环计算1+3+5+99的值,PrivateSubCommand1_Click()DimiAsInteger,nAsIntegerDimsumAsIntegersum=0Fori=99to1step-2sum=sum+iNextiPrintsumEndSub,For循环变量=初值To终值Step步长循环体Next循环变量,.,For和DoLoop的比较,采用For语句比DoLoop更加简明。一般情况下,能够预先确定循环次数时,应优先采用For语句,否则的话应该使用DoLoop语句,.,【例5.13】利用随机数函数模拟抛硬币,采用的方法是:每次随机产生一个0或1的整数,相当于一次投币,1代表正面,0代表反面。,.,在窗体上有三个文本框,名称分别是Text1、Text2、Text3,分别用于显示用户输入抛硬币次数、出现正面的次数和出现反面的次数,如图所示。,.,PrivateSubCommand1_Click()DimnAsLongDimn1AsLong,n2AsLongRandomizen=Val(Text1.Text)n1=0n2=0Fori=1Tonr=Int(Rnd*2)Ifr=1Thenn1=n1+1Elsen2=n2+1EndIfNextText2.Text=n1Text3.Text=n2EndSub,.,循环的嵌套多重循环结构如果在一个循环内完整地包含另一个循环结构,则称为多重循环,或循环嵌套,嵌套的层数可以根据需要而定,嵌套一层称为二重循环,嵌套二层称为三重循环。下面是几种常见的二重嵌套形式:,.,(1)ForI=.ForJ=.NextJ.NextI,(2)ForI=.DoWhile/Until.Loop.NextI,(3)DoWhile.ForJ=.NextJ.Loop,(4)DoWhile/Until.DoWhile/Until.Loop.Loop,.,循环嵌套,PrivateSubForm_Click()DimiAsInteger,jAsIntegerFori=1To3Printi=”;iForj=1To3PrintTab;j=;jNextjNextIEndSub,图5.6例5.4显示结果,.,循环嵌套,Fori=1To3Step1Printi=”;iForj=1To3Step1PrintTab;j=;jNextjNexti,i=1,i=3,i=i+1,Printi=”;iForj=1To3PrintTab;j=;jNextj,N,Y,.,循环嵌套,i=1,i=3,i=i+1,Print“i=“;i,j=j+1,j=1,j=3,PrintTab;j=;j,Y,N,Y,N,Fori=1To3Step1Printi=”;iForj=1To3Step1PrintTab;j=;jNextjNexti,.,循环嵌套,Fori=1To3Step1Printi=”;iForj=1To3Step1PrintTab;j=;jNextjNexti,i=1,i=3,i=i+1,Printi=”;iForj=1To3PrintTab;j=;jNextj,N,Y,.,循环嵌套,i=1,i=3,i=i+1,Print“i=“;i,j=j+1,j=1,j=3,PrintTab;j=;j,Y,N,Y,N,Fori=1To3Step1Printi=”;iForj=1To3Step1PrintTab;j=;jNextjNexti,.,循环嵌套,Fori=1To3Printi=”;iForj=1To3PrintTab;j=;jNextjNexti,i=1,i=3,i=i+1,j=j+1,j=1,j100ThenExitDoLoopPrintsumEndSub,.,ExitFor语句,ExitFor语句可以用来结束For.Next循环。一般也和选择结构语句一起配合使用。它必须放置在For.Next语句的循环体中。当执行到ExitFor时,程序会立即结束循环,跳到Next后执行下面的语句。当有多个循环嵌套使用时,ExitFor语句只跳出所在的最内层的For.Next循环。,.,【例5.7】给定一个数n,判断它是否是素数,分析:素数就是一个大于2且只能被1和本身整除的整数。判断一个数是否为素数比较简单的方法是:用n逐个除以2n-1之间的每个整数只要有一个可以整除,则说明n不是素数;如果全部不能整除,则说明n是素数。,.,PrivateSubForm_Click()DimiAsIntegerDimnAsIntegern=InputBox(请输入一个整数)Fori=2Ton-1IfnModi=0ThenExitForEndIfNextIIfinThenPrintn求出下一轮的term;,关键问题:找出前项Xi和Xi+1后项之间的关系,1!+2!+3!+n!,单循环实现累加项(term)赋初值,累加和(sum)赋初值while()sum=sum+term;求出下一轮的term;双循环实现,.,求自然对数e的近似值,要求其误差小于0.00001,PrivateSubForm_Click()Dimi%,neEndSub,.,Fibonacci数列1,1,2,3,5,8,13,21,34,55,兔子繁殖问题,求斐波那契数列前十五项,PrivateSubForm_Click()Dimf1%,f2%,f3%,i%f1=1f2=1printf1;f2Fori=3To15f3=f1+f2printf3f1=f2f2=f3NextEndSub,求最大公约数,【例5.12】用辗转相除法求两自然数x、y的最大公约数。算法描述如下:x除以y得余数r;若r=0,则y为求得的最大公约数,算法结束,否则执行步骤(3);令x等于y,y等于r,重复执行步骤(1)。,思考:请用DoWhileLoop和DoLoopUntil改写辗转相除法求最大公约数,PrivateSubForm_Click()x=InputBox(输入x)y=InputBox(输入y)Dor=xModyIfr=0ThenExitDox=yy=rLoopPrint最大公约数为:;yEndSub,.,作业2,求100以内的所有素数。求斐波那契数列第多
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 内蒙古鄂尔多斯准格尔旗第四中学2025年初三下学期第一次适应性联考数学试题试卷含解析
- 太原旅游职业学院《制药工程专业导论》2023-2024学年第一学期期末试卷
- 云南交通运输职业学院《学前专业发展与教师职业道德》2023-2024学年第一学期期末试卷
- 江苏省东台市第七联盟重点中学2025年初三下第一次质量检测试题物理试题含解析
- 扬州中瑞酒店职业学院《软件测试》2023-2024学年第二学期期末试卷
- 内蒙古工业职业学院《流体力学土建类》2023-2024学年第一学期期末试卷
- 江苏省盐城市新洋第二实验校2025年初三第四次四校联考英语试题试卷含答案
- 松原职业技术学院《礼仪与文化专题》2023-2024学年第二学期期末试卷
- 宿州航空职业学院《多元数据分析》2023-2024学年第一学期期末试卷
- 江南影视艺术职业学院《跨文化交际英语(Ⅰ)》2023-2024学年第二学期期末试卷
- (四调)武汉市2025届高中毕业生四月调研考试 语文试卷(含答案详解)
- 公司事故隐患内部报告奖励制度
- 大学生创新创业基础(创新创业课程)完整全套教学课件
- 一般单位消防安全建设标准
- 《北京市市级投资基金绩效评价管理暂行办法》
- 100道凑十法练习习题
- 2022年保安考试题库有答案
- (完整版)老人健康智能手环可行性分析报告 (1)
- 内蒙古高中毕业生学籍表毕业生登记表学年评语表成绩单身体健康检查表完整版高中档案文件
- 低钠血症鉴别诊断-杜斌PPT课件
- 光电效应和普朗克常数测定实验数据表格
评论
0/150
提交评论