第五章程序设计(xunhuan).ppt

上传人:豆**** 文档编号:88378989 上传时间:2023-04-25 格式:PPT 页数:83 大小:1.27MB
返回 下载 相关 举报
第五章程序设计(xunhuan).ppt_第1页
第1页 / 共83页
第五章程序设计(xunhuan).ppt_第2页
第2页 / 共83页
点击查看更多>>
资源描述

《第五章程序设计(xunhuan).ppt》由会员分享,可在线阅读,更多相关《第五章程序设计(xunhuan).ppt(83页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第五章程序设计(xunhuan)5.1 循环概念5.2 循环结构及循环程序语句5.3 循环程序设计举例5.4 列表框与组合框5.2.1 设计循环结构的基本原理例:计算1+2+3+100。开始i=100输出sum的值结 束真假i=i+1Sum=0i=1sum=sum+i循环设计三要素:循环设计三要素:2、循环条件、循环条件3、循环体、循环体1、初始化、初始化(1)用)用“计数计数”(2)用)用“条件条件”递推、迭代、穷举递推、迭代、穷举对变量赋初值对变量赋初值开始i=n输出sum的值结 束真假i=i+1Sum=0输入ni=1sum=sum+i例:计算1+2+3+100。开始i=100输出sum的

2、值结 束真假i=i+1Sum=0i=1sum=sum+i用用计数方式计数方式设置条件设置条件例例2:我国有:我国有13亿人口亿人口,按人口年增长按人口年增长0.8%计算计算,多少年后我国人口超过多少年后我国人口超过26亿。亿。分析:解此问题两种方法,可根据公式:分析:解此问题两种方法,可根据公式:直接利用标准函数对数可求得,但求得的年直接利用标准函数对数可求得,但求得的年数不为整数;数不为整数;利用循环实现,利用循环实现,算法流程图如图:算法流程图如图:开开 始始p26输出输出p,y 结结 束束真假y=y+1p=13y=0p=p*1.085.2.2 循环语句 Visual Basic中实现循环

3、结构语句有:中实现循环结构语句有:WhileWend DoLoop ForNext For EachNext(1)WhileWend循环语句循环语句 其语法格式为:While 条件条件 循环体循环体 Wend条件循环体真假执行后续语句(2)DoLoop循环语句循环语句1)当型前测试型当型前测试型2)当型后测试型当型后测试型Do While 条件条件 循环体循环体LoopDo 循环体循环体Loop While 条件条件3)直到型前测试直到型前测试4)直到型后测试直到型后测试Do Until 条件条件 循环体循环体LoopDo 循环体循环体Loop Until 条件条件1)当型循环前测试型)当型循

4、环前测试型 语法格式:语法格式:Do While 条件条件 循环体循环体 Loop 条件循环体真假开开 始始p=7 Print i=;i;Print a=;aEnd SubA.i=4 a=5 B.i=7 a=13 C.i=8 a=7 D.i=7 a=11(3)ForNext循环语句循环语句格式:格式:For V=e1 To e2 Step e3 循环体循环体 Next vV不不 超超 过过e2Ve1Vv+e3计算计算e1,e2,e3循环体循环体执行执行next后的语句后的语句For-Next语句执行过程语句执行过程真真假假引例:计算1+2+3+n。开始i=n输出sum的值结 束真假i=i+1S

5、um=0输入ni=1Sum=sum+i5.3 循环程序举例循环程序举例例:以下程序代码所计算的数学式是例:以下程序代码所计算的数学式是 。Private Sub Command1_Click()s=1:n=2 Do While n 1000 s=s+n n=n+2 Loop Print s=;sEnd SubA.s=1+2+4+6+998 B.s=1+2+4+6+1000C.s=2+4+6+998 D.s=2+4+6+1000例:求n!。fact=1:i=1开始i=3)是否为素数,只要依次用2Sqr(n)整数作为除数去除n,若n不能被其中任何一个数整除,则n为素数,否则便不是素数。n不是素数输

6、入n开始i=sqr(n)n是素数结 束真假i=i+1n mod i0i=2假isqr(n)真真假例例:编编写写程程序序,实实现现单单击击窗窗体体后后,在在窗窗体体上上输输出的图形如图所示。出的图形如图所示。5.3 多重循环多重循环 多重循环的执行过程是:外层循环每执行一次,内层循环就要从头开始执行一轮。例例:编编写写程程序序,计计算算级级数数1+1/3!+1/5!+1/(2N+1)!的的值值,直直到到最最后后一一个个级数项的值小于级数项的值小于10-6为止。为止。例例:编编写写程程序序,实实现现单单击击窗窗体体后后,在在窗窗体体上上输输出的图形如图所示。出的图形如图所示。例:计算1!+2!+3

7、!+n!(上机操作)例:编写程序,实现单击窗体后,在窗体上输出的图形如图所示。(上机操作)例:计算1!+2!+3!+n!(上机操作)5.4 列表框与组合框列表框与组合框5.4.1 列表框列表框表项1常用属性 (1)List属性:(2)ListIndex属性:(3)ListCount属性:(4)Selected属性:(5)Text属性:(6)Style属性:2事件 列表框可接收Click,DblClick等事件。注意,在程序运行中执行语句向属性ListIndex赋值的语句,也将触发列表框的Click事件。3方法 AddItem方法:object.AddItem item,index Remove

8、Item 方法:object.RemoveItem index Clear 方法:object.Clear例:设计一个程序,找出1001000范围内所有能同时被3和7整除的自然数,在列表框中显示出来。例:设计一个程序,在列表框中选择项目,然后在文本框中显示,并在列表框中删除已选择的项目5.4.2 组合框组合框 这三种样式和属性Style设置值为:下拉式组合框 0 vbComboDropDown 简单组合框 1 vbComboSimple 下拉式列表框 2 vbComboDropDownList例:设计程序,把一批课程名放入组合框,再对组合框进行项目显示、添加、删除、全部删除等操作。5.5 常用

9、算法举例常用算法举例例:计算1+(1+2)+(1+2+3)+(1+2+3+n)Sum=0:i=0:s=0开始i=n输出sum的值结 束真假i=i+1s=s+isum=sum+s一、求和一、求和 例:求下述数列前n项之和。算法:数列的第1项为2,根据所给出的5项,可以得到求该数列各项的递推公式。设为数列的第n项,则数列的第n+1项为:例例:穷举法解不定方程。在穷举法解不定方程。在“算经算经”里有一百鸡问里有一百鸡问题:鸡翁一值钱五,鸡母一值钱三,三鸡雏值题:鸡翁一值钱五,鸡母一值钱三,三鸡雏值钱一,百钱买百鸡。问鸡翁、鸡母、鸡雏各几钱一,百钱买百鸡。问鸡翁、鸡母、鸡雏各几何?何?分析:设公鸡x只

10、,母鸡y只,小鸡z只,依题义可以列出方程组:例:新郎和新娘 三对情侣参加婚礼,三个新郞为A、B、C,三个新娘为X、Y、Z。有人不知道谁和谁结婚,于是询问了六位新人中的三位,但听到的回答是这样的:A说他将和X结婚;X说她的未婚夫是C;C说他将和Z结婚。这人听后知道他们在开玩笑,全是假话。请编程找出谁将和谁结婚。分析:将A、B、C三人用1,2,3表示,将X和A结婚表示为“X=1”,将Y不与A结婚表示为“Y1”。按照题目中的叙述可以写出表达式:x1 A不与X结婚 x3 X的未婚夫不是C z3 C不与Z结婚 还隐含着X、Y、Z三个新娘不能结为配偶,则有:xy且xz且yz 穷举以上所有可能的情况,代入上

11、述表达式中进行推理运算,若假设的情况使上述表达式的结果均为真,则假设情况就是正确的结果。Private Sub Command1_Click()Dim x As Integer,y As Integer,z As Integer For x=1 To 3 For y=1 To 3 For z=1 To 3 If(x 1 And x 3 And z 3 And x y And x z And y z)Then Print X will marry to;Chr(Asc(A)+x-1)Print Y will marry to;Chr(Asc(A)+y-1)Print Z will marry t

12、o;Chr(Asc(A)+z-1)End If Next z,y,xEnd Sub习题习题5一单选题一单选题1下列循环语句所确定的循环次数是下列循环语句所确定的循环次数是 。For k=200#To 100 Step-2*10 n=n+1Next A.6 B.5 C.4 D.32写出下列事件过程的运行结果。写出下列事件过程的运行结果。Private Sub Command1_Click()s=0 For k=10 To 50 Step 15 s=s+k Next Print sEnd Sub A.20 B.130 C.75 D.553.分析下列程序,回答以下问题:分析下列程序,回答以下问题:语

13、句语句s=s+n被执行的次数为被执行的次数为 。程序的运行结果为程序的运行结果为 。Private Sub Command1_Click()n=1:s=1 Do While n 6 s=s+n If n 3 Then n=n+1 Else n=n+2 Loop Print sEnd Sub A.2 B.3 C.4 D.5 A.13 B.12 C.11 D.104写出下列程序运行的结果。写出下列程序运行的结果。Private Sub Command1_Click()s=0123456789:c=For k=2 To Len(s)Step 3 a=Left(s,k)b=Right(a,k)c=Mi

14、d(b,k,1)+c Next Print cEnd Sub A.7410 B.741 C.735 D.415执行下列程序后,变量执行下列程序后,变量s的值是的值是 。Private Sub Command1_Click()s=0 For m=1 To 3 n=1 Do While n=m s=s+n n=n+1 Loop Next Print sEnd SubA.4 B.7 C.10 D.156以下程序代码所计算的数学式是以下程序代码所计算的数学式是 。Private Sub Command1_Click()s=1:n=2 Do While n 1000 s=s+n n=n+2 Loop P

15、rint s=;sEnd SubA.s=1+2+4+6+998B.s=1+2+4+6+1000C.s=2+4+6+998D.s=2+4+6+10007.数列数列0,1,1,2,3,5,8,称为波契纳数列,它的前两称为波契纳数列,它的前两个数是个数是0和和1,以后每一个数都是前两个数之各和。输出这个数,以后每一个数都是前两个数之各和。输出这个数列的前列的前20个数。将下列程序代码补充完整。个数。将下列程序代码补充完整。Private Sub Command1_Click()a=0:b=1 Print a;b;For k=3 To 20 Print c;NextEnd Sub A.c=a B.c=

16、a+b C.c=b D.a=c+b A.b=a B.a=c C.a=b D.c=b A.b=a B.b=c C.a=b D.c=a 8将数据项将数据项“计算机计算机”添加到列表框添加到列表框List1中作中作为第为第8项的内容,应使用项的内容,应使用 。A.List1.AddItem“计算机计算机”,8 B.List1.AddItem“计算机计算机”,7 C.List1.AddItem 8,“计算机计算机”D.List1.AddItem 7,“计算机计算机”9.读取列表框中的第读取列表框中的第3个表项值,把值赋个表项值,把值赋给变量给变量x,不可以采用,不可以采用 。A.x=List1.Lis

17、t(2)B.x=List1.Text(2)C.List1.Selected(2)=True D.x=List1.Text10在组合框在组合框Combo1中选定某一表项后,单击命令中选定某一表项后,单击命令按钮按钮(名称为名称为Command1)即可删除该表项,即可删除该表项,Command1的单击事件过程是:的单击事件过程是:Private Sub Command1_Click()If Combo1.ListIndex -1 Then Combo1.RemoveItem End IfEnd Sub A.Combl1.ListCount B.Combo1.ListIndex C.Combo1.T

18、ext D.Combo1.MultiSelect二填空题二填空题1设设n和和s均为整型变量,分别具有初值均为整型变量,分别具有初值1和和10。试指出下列。试指出下列循环语句的循环体各执行多少次,以及结束循环后循环语句的循环体各执行多少次,以及结束循环后n值各为多值各为多少?少?n=1:s=10n=1:s=10 Do While n 40 n=n+3n=n*2 LoopLoopn=1:s=10n=1:s=10 DoDo n=n*3n=s n Loop Until n sn=n+2Loop While n sn=1:s=10 While n=m Then Print 2的的;n;次方次方;m Ex

19、it Do End If LoopEnd Sub4如果只允许在列表框中每次只能选择一个如果只允许在列表框中每次只能选择一个列表项,则必须将其列表项,则必须将其MultiSelect属性设置为属性设置为 。5用户可以通过用户可以通过 属性来输入或取得组属性来输入或取得组合框中的数据。合框中的数据。6在在3种组合框中,仅供选择其中表项数据,种组合框中,仅供选择其中表项数据,但不允许添加数据的组合框是但不允许添加数据的组合框是 。7 在在 下下 拉拉 组组 合合 框框 中中 添添 加加 表表 项项,可可 以以 使使 用用 方方 法法;为为 组组 合合 框框 删删 除除 表表 项项,可可 以以 使使

20、用用 方法。方法。8在窗体上已经建立了一个列表框在窗体上已经建立了一个列表框List1和一个标签和一个标签Label1,然后编写如下,然后编写如下3个事件过程:个事件过程:Private Sub Form_Load()List1.AddItem ItemA List1.AddItem ItemB List1.RemoveItem 1 List1.AddItem ItemC List1.AddItem ItemD,1 List1.RemoveItem 2End SubPrivate Sub Form_Click()Label1.Caption=List1.List(List1.ListCount

21、-1)End SubPrivate Sub List1_DblClick()Label1.Caption=List1.TextEnd Sub运行程序后,开始时在列表框中显示的表项内容是运行程序后,开始时在列表框中显示的表项内容是 及及 。单击窗体,则在标签中显示。单击窗体,则在标签中显示 。当双。当双击列框中的列表项击列框中的列表项“ItemA”时,则在标签中显示时,则在标签中显示 。9从字符串中查找子字符串从字符串中查找子字符串“123”,将该子字符串删除,但,将该子字符串删除,但“1234”子字符串保留,如将子字符串保留,如将“AB123C1234DE123F”处理成处理成“ABC1234

22、EF”。完成下列程序代码。完成下列程序代码。Private Sub Form_Load()x=InputBox(输入字符串输入字符串)p=InStr(x,123)Do While p 0 If Mid(x,p+3,1)4 Then x=Left(x,p-1)+Else p=p+End If p=InStr(,x,123)Loop MsgBox(处理结果:处理结果:+x)Unload MeEnd Sub上机编程练习上机编程练习51求级数求级数S=1/(1+4)+1/(1+24)+1/(1+34)+1/(1+n4)+的前的前100项之和。项之和。2如如果果一一个个三三位位整整数数等等于于它它的的各

23、各位位数数的的立立方方和和,则则此此数数称称为为“水水仙仙花花数数”,如如153=13+53+33。编编写写程程序序求求所所有有的的水水仙仙花数。花数。3指指定定一一个个初初始始值值,从从该该数数值值开开始始,找找出出100个个不不能能被被7整整除除的的自自然然数数。要要求求通通过过文文本本框框来来接接收收初初始始值值,找找出出的的自自然然数数显显示在列表框中。示在列表框中。4凡凡是是满满足足x2+y2=z2的的正正整整数数组组(x,y,z)就就称称为为勾勾股股数数组组成成(如如3,4,5)。请请找找出出任任意意一一个个正正整整数数n(通通过过InputBox函函数数输输入入)以以内内的的所所

24、有有勾勾股股数数组组,把把这这些些数数组组直直接接显显示示在在窗体上。窗体上。5设设计计程程序序,在在窗窗体体上上建建立立一一个个列列表表框框List1和和一一个个“显显示示”命命令令按按钮钮Command1。列列表表框框高高(Height)为为1770,宽宽(Width)为为1300,字字体体为为“黑黑体体”,字字号号为为14,列列表表框框中中已已有有5个个列列表表项项,依依次次为为“表表项项1”“表表项项5”。要要求求程程序序运运行行后后,可可以以通通过过多多次次单单击击来来选选中中多多个个列列表表项项。单单击击“显显示示”按按钮钮,在在窗窗体体上上输输出出所所有有选选中中的的列列表表项项

25、,如图如图5-28所示。所示。6在窗体上已经建立了两个文本框在窗体上已经建立了两个文本框(Text1及及Text2)和一个命和一个命令按钮令按钮(Command1),用户在文本框用户在文本框Text1中输入文本,单击命中输入文本,单击命令按钮后,从文本框令按钮后,从文本框Text1中取出英文字母,并按输入顺序显中取出英文字母,并按输入顺序显示在文本框示在文本框Text2中。例如,输入中。例如,输入“12aA3b4B5”,在文本框在文本框Text2中显示为中显示为“aAbB”。通过上机调试来完善下列程序代码。通过上机调试来完善下列程序代码。Private Sub Command1_Click()

26、Dim s As String,y As String s=Trim()y=For k=1 To x=Mid(s,k,1)If Then y=End If Next Text2.Text=yEnd Sub7用迭代法求用迭代法求 。求平方根的迭代公式。求平方根的迭代公式为:为:通过通过InputBox函数输入函数输入a值,并以值,并以a作为作为x的初值。要求前后两次求出的的初值。要求前后两次求出的x的差的绝的差的绝对值小于对值小于10-5。8编编写写程程序序,实实现现单单击击窗窗体体后后,在在窗窗体体上输出的图形如图上输出的图形如图5-29所示。所示。此此课件下件下载可自行可自行编辑修改,修改,仅供参考!供参考!感感谢您的支持,我您的支持,我们努力做得更好!努力做得更好!谢谢!

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 考试试题 > 语文专题

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁