下面程序的功能是
下面程序的功能是:计算f=1-1/(2*3)+1/(3*4)-1/(4*5)+„„+1/(19*20)
Private Sub Form_Click()
Dim f,i,sign As Integer f = 1 f = f + sign / (i * (i + 1)) Next i
Print “f=”;f
End Sub
11.下面的程序是在一个字符串变量中查找“at”,并用消息框给出查找结果的报告:没有找到或找到的个数,程序如下:
Public Sub Findat()
Dim Str1 As String
Dim length As Integer
Dim sum As Integer
Dim i As Integer
Str1 = InputBox (“请输入一个字符串”) i = 1
sum = 0 “at” Then
sum = sum + 1
End If
i = i + 1
Loop MsgBox “没有找到!”
Else
MsgBox “找到了” & Str (sum) & “个”
End If
End Sub
下面程序的功能是:单击窗体后,输入英文句子,将其每个单词首字母变为大字字母,再输出
Private Sub Form_Click()
Dim oldsen As String, newsen As String
Dim char As String, lastchar As String
Dim n As Integer, i As Integer
oldsen = InputBox("请输入英文句子:")
n = Len(oldsen)
lastchar = " "
For i = 1 To n
char = Mid(oldsen, i, 1)
If lastchar = " " Then
char = UCase(char) '变为大写
End If
newsen = newsen & char
lastchar = char Next i
Print "input:" ; oldsen
Print "output:" ; newsen
End Sub
编写程序,使用InputBox函数输入两个电阻的值,求它们并联和串联的电阻值,使用MsgBox消息框输出结果,要要求保留三位小数
Sub Macro2()
Dim s1, s2 As String
Dim n5
Dim n1, n2, n3, n4 As Single
s1 = InputBox("请输入两电阻的阻值,之间用半角逗号“,”分隔", "提示信息")
n1 = Val(s1)
n2 = Val(Mid(s1, InStr(s1, ",") + 1))
If n1 > 0 And n2 > 0 Then
n3 = Round(n1 + n2, 3) '串联电阻值
n4 = Round(n1 * n2 / (n1 + n2), 3) '并联电阻值
n5 = MsgBox(n1 & "Ω和" & n2 & "Ω两个电阻的" & Chr(13) & "串联电阻值为:" & n3 & "Ω" & Chr(13) & "并联电阻值为:" & n4 & "Ω", , "计算结果")
Else
n5 = MsgBox("两电阻值输入有错,请重新输入!", , "错误提示")
End If
End Sub
用inputbox函数输入3个数据,如果这3个数据能构成三角形,计算并在窗体上输出三角形面积。
Private Sub Command1_Click()
Dim a, b, c, s, x
a = Val(InputBox("请输入第一条边长"))
b = Val(InputBox("请输入第二条边长"))
c = Val(InputBox("请输入第三条边长"))
If a + b > c And a + c > b And b + c > a Then
Print "能组成三角形"
x = 1 / 2 * (a + b + c)
s = Sqr(x * (x - a) * (x - b) * (x - c))
Print "三角形面积s="; s
Else
Print "不能组成三角形"
End If
End Sub
编程计算下列分段函数值
f(x)=1.x2+x-6 x
2.x2-5x+6 0
3.x2-x-1 其他
if x
f=x^2+x-6
elseif x=0 and x2 and x3 then
f=x^2-5*x+6
else
f=x^2-x-1 end if Function jc(n As Integer) As Long 编写程序计算1+2!+3!+4!+„„+10!的程序
Private Sub Form_Click()
Dim s As Double
m = 1
For n = 1 To 10
m = m * n
s = s + m
Next
Print s
End Sub
用VB编一程序,显示出所有的水仙花数。所谓水仙花数,是指一个3位数,其各位数字立方和等于该数本身。例如,153是水仙花数,因为153=13+53+33,
Private Sub Command1_Click()
Dim i As Integer
For i = 100 To 999
If (i \ 100) ^ 3 + (i \ 10 Mod 10) ^ 3 + (i Mod 10) ^ 3 = i Then Print i
Next
End Sub
下面的程序是将输入的一个数插入到递减的有序数列中,插入后使该序列仍有序。 SubButton1_Click(.....) Handles Button1.Click
Dim i% , n% ,m%
Dim a() As Integer={21,19,17,15,13,11,9,7,5,3,1}
n=UBound(a)
m= Val(InputBox("输出欲插入的数"))
For i=UBound(a) -1 To Step -1
If m>=a(i) Then
If i=0 Then a(i)=m
Else
Exit For
End If
Next i
Label1.Text &=a(i) & " "
Next i
End Sub
编一程序,将一维数组中元素向右循环移位,移位次数键盘输入。
SUB SHIFT_LEFT()
DIM TEMP I
TEMP=A(1)
FOR I=2 TO 10
A(I-1)=A(I)
NEXT I
A(10)=TEMP
END SUB
输入对话框输入100个数值数据放入数组a。将其中的整数放入数组b,然后运用选择法将数组b中的数据按从小到大排序,并将数组b以每行10个数据在窗体上输出。 Private Sub Command1_Click() For I = 2 To J
Dim I As Integer, J As Integer, K As For K = 1 To I
Integer If b(K) > b(I) Then
Dim a(1 To 100) As Single b(0) = b(K)
Dim b(100) As Integer b(K) = b(I)
J = 0 b(I) = b(0)
For I = 1 To 100 End If
Randomize (Timer) Next K
K = Int(Rnd() * 2) + 1 Next I
'If K = 1 Then a(I) = Int(Rnd() * 1000 + 1) / For I = 1 To J
10 Else a(I) = Int(Rnd() * 100 + 1) Print b(I);
a(I) = InputBox("请输入第" & I & "个数:") If I Mod 10 = 0 Then Print
If a(I) = Int(a(I)) Then J = J + 1: b(J) = a(I) Next I
Next I End Sub
顺序文件的建立。建立文件名为" C:\stud1.txt"的顺序文件,内容来自文本框,每按Enter键写入一条记录,然后清除文本框的内容,直到文本框内输入"END"字符串。
Private Sub Form_Load()
Open "C:\stud1.txt" For Output As #1
Text1.text = ""
End Sub
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
If UCase(Text1.Text) = "END" Then
Close #1
End
Else
Print #1 , Text1.Text
Text1.text = ""
End If
End If
End Sub
将C盘根目录下的一个文本文件old.txt复制到新文件new.txt中,并利用文件操作语句将old.txt文件从磁盘上删除。
Private Sub Command1_Click()
Dim str1$
Open "C:\old.txt" For Input As #1
Open "C:\new.txt" For Output As #2
Do While Not EOF(1)
Line Input #1,str1
Print #2 , str1
Loop
Close #1,#2
Kill "C:\old.txt"
End Sub
4. 下面程序的功能是将文本文件合并。即将文本文件“t1.txt”合并到“t.txt”文件中,请将程序填写完整。
Private Command1_Click()
Dim s$
Open "t.txt" For Append As #1
Open "t1.txt" For Input As #2
Do While Not EOF(2)
Line Input #2 , s
Print #1 , s
Loop
Close #1, 2#
End Sub
假定文本框名称为txtTest,文件名为MYFILE.TXT。可以通过下面三种方法来实现。 方法1:一行一行读
txtTest.Text = "" 方法3:一个个字符读
Open "MYFILE.TXT" For Input As #1 Dim InputData as String*1
Do While Not EOF(1) txtTest.Text = ""
Line Input #1, InputData Open "MYFILE.TXT" For Input As #1 txtTest.Text = txtTest.Text + Do While Not EOF(1)
InputData+vbCrLf Input #1, InputData
Loop txtTest.Text = txtTest.Text + InputData Close #1 Loop
方法2:一次性读 Close #1
txtTest.Text = ""
Open "MYFILE.TXT" For Input As #1
txtTest.Text = Input( LOF(1),1)
Close #1