程序设计基础——程序设计的循环结构.doc_第1页
程序设计基础——程序设计的循环结构.doc_第2页
程序设计基础——程序设计的循环结构.doc_第3页
程序设计基础——程序设计的循环结构.doc_第4页
程序设计基础——程序设计的循环结构.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

程序设计基础程序设计的循环结构一、格式For=ToStep步长 Next 二、功能当循环变量的值在初值到终值范围内时,执行一次循环体中的语句块,并使初值增加一个步长。当循环变量的值不在初值到终值范围内时,就退出循环,执行Next后面的语句。For循环语句执行的流程图。执行过程三、说明: (1):也称循环控制变量,它是一个数值变量,但不能是逻辑值或数组元素。 (2)、和:它们是一个数值表达式。 步长为正数时,表示递增循环,初值小于或等于终值步长为负数时,表示递减循环,初值大于或等于终值步长不可以为0。步长为1,可以省略不写l。 (3):在For语句和Next语句之间的语句序列,可以是一个或多个语句。 (4)Next:是循环终端语句,在Next后面的循环变量与For语句中的循环变量必须相同。当只有一层循环时,Next后面的循环变量可略去不写。 (5)For语句又叫做循环说明语句,用来指定循环变量的名称,以及循环变量的初值、终值和步长;循环体是被反复执行的部分(即循环工作部分),它可以由若干条语句所组成;Next,语句又叫做循环终端语句,其作用是改变循环变量的值(即增加一个步长)并控制是否再次执行循环体。 (6)循环执行的次数: n=Int(终值一初值)步长) (7)ForNext语句可以嵌套使用,嵌套的层数没有限制,其基本要求是:每个循环只有一个惟一的变量作为循环变量;内层循环变量的Next语句必须放在上层循环变量的Next语句之前。四、循环结构典型例题(1)求100以内奇数的和FORNEXTDO WHILE LOOPDO LOOP UNTILS=0For I=1 to 99 step 2 S=S+INext IS=0I=1Do while I100 (2)S=123499100法一法二法三S=0S1=0S2=0FOR I=1 TO 99 STEP2 S1=S1+INEXT IFOR J=2 TO 100 STEP 2 S2=S2+JNEXT JS=S1-S2S=0FOR I=1 TO 100 IF I MOD 2=1 THEN S=S+I ELSE S=S-I END IFS=0FOR I=1 TO 100 S=S+(-1)(I-1)*INEXT I(3)猴子吃桃S=1For i=1 to 9 S=2*(s+1)Next i(4)打印图形* * * *I J 空格1 3 42 3 43 3 4I J 空格1 1 42 2 43 3 4I J 空格1 3 42 2 43 1 4I J 空格1 3 32 3 23 3 1I J 空格2 1 31 3 20 5 11 3 22 1 3FOR I=1 TO 3PRINT TAB(4) ; FOR J=1 TO 3PRINT “*”; NEXT JPRINTNEXT IFOR I=1 TO 3PRINT TAB(4) ; FOR J=1 TO IPRINT “*”; NEXT JPRINTNEXT IFOR I=1 TO 3PRINT TAB(4) ;FOR J=1 TO 4-IPRINT “*”; NEXT JPRINTNEXT IFOR I=1 TO 3PRINT TAB(4 -I) ; FOR J=1 TO 2*ABS(I)-1PRINT “*”; NEXT JPRINTNEXT IFOR I=-2 TO 2PRINT TAB(1+ABS(I) ; FOR J=1 TO 5-2*ABS(I)PRINT “*”; NEXT JPRINTNEXT I(5)鸡兔同笼鸡兔同笼,共有100条腿,40个头,问鸡有几只,兔有几只?PrivateSub Form_Click()Dim Ji As Integer Ji变量表示鸡的个数Dim Tu As Integer Tu变量表示兔的个数Dim Leg As Integer Leg变量表示腿数For Ji=1 To 40Tu=40-jiLeg=ji*2+Tu*4 计算腿数If Leg=100 Then 如果腿正好100只,则打印。Print 鸡=;Ji;只,兔=;Tu;只End IfNext JiEnd Sub(6)编写程序,使得单击显示按钮后,随机产生10个属于区间0,100)的自然数,并保存于数组a中,然后在窗体上显示这10个数中的最大值。PrivateSub Command1_Click()Dim a(9)AsIntegerDim max As IntegerDim I As IntegerMe.ClsPrintRandomizeFor i=0 To 9 Step 1a(i)=Int(Rnd*100)Print a(i)Next imax=a(0)For i=1 To 9If maxa(i) Thenmax=a(i)End IfNext iPrint 这10个自然数中的最大值=;Str(3)EndSub(7)编写程序,使得单击显示按钮后,在窗体上显示99乘法表。PrivateSub Command1_Click()Dim I As IntegerDim j As IntegerFor i=1 To 9 Step 1Print ;For j=1 To 9Print i*j ;Print vbTab;Next jprintNext iEnd Sub(8)编程计算1-1/2+1/3-1/4+.+1/99-1/100,单击窗体后,在窗体上显示结果。PrivateSub Form_Click()Dim s As SingleDim I As Integers=0For i=1 To 100 Step 1If I Mod 20 Thens=s+1/iElses= s-1/iEndIfNext iPrints=;sEndSubDoLoop循环知识点:格式一: Do While 条件循环体Loop循环体有可能执行0次,当条件一开始就是false,则一次不运行,执行0次,如果条件为true则反复执行循环体,直到条件变为false则退出循环 格式二: Do 循环体 Loop While 条件格式二中循环体执行至少1次,这一点很重要。因为要先执行一次循环体,然后才看是判断条件,如果条件为false,则退出,循环体就仅仅执行了第一次,否则,如果条件仍然成立,则继续返回上面运行,知道条件不成立了则退出。 格式三: Do 循环体 Loop Until条件格式三中先执行循环体1次,然后看条件,如果条件为false则继续执行循环体,直到条件为true就退出循环。Until循环与上面的while循环结束条件刚好相反,while循环条件成立则继续做,until循环条件成立则不做了。Do loop 循环习题:1、在VB程序中,以下程序段执行后,x的值为 (A )x=1y=4Do While y4x=x*yy=y+1LoopPrint xA1B4C8D207、在VB程序中,以下程序段执行后,x的值为(B )x=0Do While x50x=(x+2)*(x+3) LoopA0B72C50D16816、在VB程序中,以下程序段执行后,x的值为(B )x=0Do While x=2x=x+1 LoopA2B3C4D520、在VB程序中有以下程序段,语句Print VB的执行次数是(A )i=1Do While i0Print VB LoopA0B1C2D无数次27、在VB程序中,以下程序段执行后,x的值为( D )n=10 : x=1 : k=1五、递归典型例题(1)求N! 递归法(10!) 非递归法(10!)Function S(n as integer) as single a=1 If n=1 then for i=1 to 10 S=1 a=a*i Else next i S=S(n-1)*n print a End ifEnd FunctionPrivate sub form_click() Print “s(10)=”;s(10)End sub(2)求N项自然数的和 递归法 (100!) 非递归法(100!)Function S(n as integer) as single s=0 If n=1 then for i=1 to 100 S=1 s=s+i Else next i S=S(N-1)+N print s End ifEnd FunctionPrivate sub form_click() Print “s(100)=”;s(100)End sub(3)Fib数列Fib(n)=1,1,2,3,5,8,13,.求Fib数列的第10项Function Fib(n as integer) as single If n=1 or n=2 then Fib=1 Else Fib=Fib(n-1)+Fib(n-2) End ifEnd FunctionPrivate sub form_click() Print “Fib(10)=”;Fib (10)End sub选择题:1.在VB程序中有以下程序段,语句Print VB的执行次数是( )For i=1 To 3For j=3 To 1 Step -1Print VBNext jNext iA3B4C6D9D2、在VB程序中,以下程序段执行后,x的值为(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论