在窗体上添加一个textBox,一个Command1控件,加入以下代码
Private Sub Command1_Click()
a = 0
b = 1
i = 2
Text1 = a & " " & b & " "
Do While (i <= 100)
a = a + b: b = a + b
Text1 = Text1 & a & " " & b & " "
i = i + 2
Loop
End Sub
Private Sub Form_Load()
Text1MultiLine = True
End Sub
虽然实现了100个斐波那契数列的输出,但是后面的数据已经变成了浮点数,需要精确数据的话就需要设置数组来计算了
若满意请及时采纳,谢谢
这个用循环语句计算比较方便,例如 do while 语句 ,do loop语句,for next 语句都可以
for next 语句举例:
Private Sub Command1_Click()
Dim i%, iSum
For i = 0 To 4 Step 2
iSum = i + iSum
DebugPrint i
DebugPrint
Next
DebugPrint iSum
End Sub
更多帮助请登录>
1、运行For语句和Do语句的循环语句的功能示范frm(注意步长为负时,如-1时For语句的运行情况讨论),掌握它们的功能;
2、例2:求S=1+1/2+1/3+…+1/n的循环结构程序如下:(演示:例2累加求和程序FRM,再一次说明为什么要用第二种Do循环语句)
S = 0
n = Val(Text1Text) (因为条件表达式是数值比较,所以要把Text1Text得到的
字符串数字转为数值类型,例如:”100”100)
Do While n < 1 Or n <> Fix(n) Fix(x)是取整函数;
n = InputBox("输入n不是自然数,请重新输入n=") ‘输入框:InputBox
Text1Text = n
n = Val(n) (因为条件表达式是数值比较,所以要把InputBox得到的
Loop 字符串数字转为数值类型,例如:”100”100)
For k = 1 To n
S = S + 1 / k 循环求S=1+1/2+1/3+…+1/n
Next k
Text2Text = S
3、两种循环结构语句的格式:
(1) For语句的一般格式: P79
For 循环变量=初值 To 终值 Step 步长
程序段
Next循环变量 (当循环变量没超出终值时,执行程序段)
(2) Do语句的常用格式: P80
Do While 条件表达式 (当条件成立时,进入循环,执行程序段)
程序段
Loop (负责回到条件表达式,判断是否成立?)
提问:程序段的结构是什么样的?
就是以前讲的程序有三种基本控制结构:顺序结构、(分支)选择结构、循环结构!
这三种基本控制结构通常会被组合起来使用,以表达各种较为复杂的问题的算法。例如:
在(分支)选择模式内嵌入(分支)选择模式;
在循环模式内嵌入循环模式;
在循环模式内嵌入在(分支)选择模式;在(分支)选择模式内嵌入循环模式;
因此,循环内的程序段可以再包含选择模式和循环模式,今天我们先来讨论:
循环内的程序段可以再包含循环模式——多重循环的使用!
如果一层循环内只包含一层循环,我们把它叫做双重循环,掌握了双重循环的用法,那么多重循环也就容易使用掌握了。
二、双重循环的使用:
1、一般结构:(以For语句为例)
For 循环变量A=初值 To 终值 Step 步长
…
For 循环变量B=初值 To 终值 Step 步长
程序段
Next循环变量B
…
Next循环变量A
2、双重循环执行实例:
双重循环是如何执行的呢?我们来看下面:
实例1:For i=1 To 3 Step 1
For j=1 To 5 Step 1
List1AddItem Str(i) + "" + Str(j) ‘复习列表框List1AddItem的作用,
Next j
Next i ‘运行、演示多重循环程序;
从实际演示可知:当i=1时,j=1、2、3、4、5;
当i=2时,j=1、2、3、4、5;
当i=3时,j=1、2、3、4、5;
规律总结:先外循环,后内循环,内循环完成后,再进入外循环;
实例2:打印(输出)用“”组成的图形;
右边程序中,只要改变a、b的值,便打印出用“”组成的各种图形;(演示…)
注意:Print ""; 后分号“;” 表示不换行,下次循环打印还在同一行上。用立即方式验证如下:
Print "3";"+" ;"9=";39
3+9= 27
提问:输出 39=27 的语句有几种写法?(用立即方式展示)
实例3:修改实例2,可得到一个九九乘法表,程序如下:
For i=1 To 9 Step 1
For j=i To 9 Step 1
Print Str(i) + "" + Str(j)+ "=";ij;
Nextj
Print ‘打印空行,起到换行的作用!
Next i
讲解上程序,演示九九乘法表程序;
注意:为了内、外循环程序结构层次清楚,上面程序的同一个循环语句For/Next上下对齐,而且内循环语句缩进2格书写;
1、循环内的程序段可以再包含循环模式,我们称为多重循环;
如果一层循环内只包含一层循环,我们把它叫做双重循环。
2、双重循环的运行是先外循环,后内循环,内循环完成后,再进入外循环;
(多重循环运行次序也一样类推,见课本P22-23(P96-97)的包装问题算法);
可以用循环来实现的,结合窗体的Controls属性,达到引用空间组的成员的目的
代码如下:
Private Sub command1_click()
Dim i As Long
For i = 1 To 10
MeControls("Label" & i)Caption = i
Next i
End Sub
用VB编写:循环语句的应用,计算1~100的偶数和,最简单的方法是采用计数循环来实现。
dim i as integer,s as integer
s=0
for i = 2 to 100 step 2
s = s + i
next i
print "Sum ="; s
Private Sub Command1_Click()
Static n As Long, valSum As Double
Select Case Command1Caption
Case "计算"
valSum = 0
Dim i As Long
n = InputBox("Pleace input integer n:", "InputBox", 10)
Command1Caption = "显示"
For i = 1 To n
valSum = valSum + 1 / i
Next i
Case "显示"
Label1Caption = "n=" + CStr(n)
Text1Text = valSum
Command1Caption = "计算"
End Select
End Sub
Private Sub Form_Load()
Text1Enabled = False
Text1Text = ""
Command1Caption = "计算"
Command1FontBold = True
Command1FontSize = 22
Command1FontName = "宋体"
Text1FontName = "Times New Roman"
Text1FontBold = True
Text1FontSize = 22
End Sub
参考代码:
n = InputBox("输入n")For i = 1 To n
For j = 1 To i
Sum = Sum + j
Next
Next
MsgBox "s=" & Sum
例如要循环d窗18次:
for i = 1 to 18msgbox "d窗文字"
next
如此for就是一个循环结构。i会从1增加到18,每次自增1。
也可以双重循环甚至N重。例如如下为双重:
for i = 1 to 6for j = 1 to 3
msgbox "d窗文字"
next
next
i循环了6次,j在每次i的循环里循环3次,一样是18次。
以上就是关于用VB中的do while 循环结构编一个斐波那契数列的程序全部的内容,包括:用VB中的do while 循环结构编一个斐波那契数列的程序、大一VB 使用循环结构编写程序,求2+4+6+8+到100、vb里面那几个表示循环的函数怎么用等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)