V B经典例题13道(附答案)1.一串字符求有多少字母,有多少数字,有多少其他Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim s, c, q, w, rs = TextBox1.TextFor i = 1 To Len(s)c = Mid(s, i, 1)If UCase(c) >= "A" And UCase(c) <= "Z" Thenq = q + 1ElseIf c >= "0" And c <= "9" Thenw = w + 1Elser = r + 1End IfNextLabel1.Text = "字母有" & q & "个数字有" & w & "个其他有" & r & "个" End Sub2.一串字符以?结尾,求有多少字母,有多少数字,有多少其他Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim s, a, z, x, c, is = TextBox1.Texta = Mid(s, 1, 1)i = 1Do While a <> "?"If UCase(a) >= "A" And UCase(a) <= "Z" Thenz = z + 1ElseIf a >= "0" And a <= "9" Thenx = x + 1Elsec = c + 1End Ifi = i + 1a = Mid(s, i, 1)LoopLabel1.Text = z & x & cEnd Sub3.给定一个数字求它是几位数字,如(1).12345 (2).-12345 (3).123.45 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Clicks = TextBox1.Textc = Trim(Str(s))If Int(c) = c ThenIf c >= 0 ThenLabel1.Text = "是" & Len(c) & "位数"ElseLabel1.Text = "是" & Len(c) - 1 & "位数"End IfElseIf c >= 0 ThenFor i = 1 To Len(c)If Mid(c, i, 1) = "." Then Exit Forj = j + 1NextLabel1.Text = "小数点前有" & j & "位数 " & " 小数点后有" & Len(c) - j - 1 & "位数 "ElseFor i = 1 To Len(c)If Mid(c, i, 1) = "." Then Exit Forj = j + 1NextLabel1.Text = "小数点前有" & j - 1 & "位数 " & " 小数点后有" & Len(c) - j - 1 & "位数 "End IfEnd IfEnd Sub4.求圆周率公式Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim a, s, n, pia = 1n = 1While Math.Abs(1 / n) > 0.0001pi = pi + a * (1 / n)n = n + 2a = -aLabel1.Text = 4 * piEnd Sub5.求自然对数e 公式e=1+1+1/2!+1/3!+…+1/n!+….Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim n, e1, ln = 1e1 = 1While 1 / n > 0.01l = 1For i = 1 To nl = l * iNextn = n + 1e1 = e1 + 1 / lEnd WhileLabel1.Text = e1End Sub6.右直角三角形Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim n, sLabel1.Text = ""n = Val(TextBox1.Text)For i = 1 To ns = ""Label1.Text &= Space(n - i)For j = 1 To is &= "*"NextLabel1.Text &= s & vbCrLfNextEnd Sub7.等腰三角形Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim n, sLabel1.Text = ""n = Val(TextBox1.Text)For i = 1 To nLabel1.Text &= Space(n - i)For j = 1 To 2 * i - 1s &= "*"NextLabel1.Text &= s & vbCrLfNextEnd Sub8.倒等腰三角形Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim n, sLabel1.Text = ""n = Val(TextBox1.Text)For i = n To 1 Step -1s = ""Label1.Text &= Space(n - i)For j = 2 * i - 1 To 1 Step -1s &= "*"NextLabel1.Text &= s & vbCrLfNextEnd Sub9.右上角的直角三角形Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim n, sLabel1.Text = ""n = Val(TextBox1.Text)For i = n To 1 Step -1s = ""Label1.Text &= Space(n - i)For j = i To 1 Step -1s &= "*"NextLabel1.Text &= s & vbCrLfNextEnd Sub10.菱形Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickLabel1.Text = ""For i = 1 To 6s = ""Label1.Text &= Space(i - 1)For j = 1 To 12s &= "*"NextLabel1.Text &= s & vbCrLfNextEnd Sub11.水仙花数字三位数字的个位数字的立方和等于该数字本身(1).判断输入的数字是否是水仙花数Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim s, a, b, cs = Val(TextBox1.Text)Label1.Text = ""a = s \ 100b = (s - a * 100) \ 10c = s Mod 10If a ^ 3 + b ^ 3 + c ^ 3 = s ThenLabel1.Text &= s & "是水仙花数"ElseLabel1.Text &= s & "不是水仙花数"End IfEnd Sub(2).找出所有的水仙花数Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim s, a, b, cLabel1.Text = "水仙花数是" & vbCrLfFor s = 100 To 999a = s \ 100b = (s - a * 100) \ 10c = s Mod 10If a ^ 3 + b ^ 3 + c ^ 3 = s ThenLabel1.Text &= s & vbCrLfNextEnd Sub12.完全数正整数的因数之和等于这个数(1).判断输入的数字是不是完全数Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim s, j, l, a(100)s = Val(TextBox1.Text)j = 1For i = 1 To s - 1If s Mod i = 0 Thena(j) = ij = j + 1End IfNextFor i = 1 To jl = l + a(i)NextIf l = s ThenLabel1.Text = s & "是完全数"ElseLabel1.Text = s & "不是完全数"End IfEnd Sub(2).找出1到n内的完全数,n 由用户输入Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim n, jn = Val(TextBox1.Text)Label1.Text = ""For p = 2 To nj = 0For i = 1 To p - 1If p Mod i = 0 Thenj = j + iEnd IfNextIf j = p ThenLabel1.Text &= p & " "End IfNextEnd Sub13.显示1,1,2,3,5,8,13,21…… F(i)=f(i-1)+ f(i-2)Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim f(30)f(1) = 1f(2) = 1For i = 3 To 30f(i) = f(i - 1) + f(i - 2)NextLabel1.Text = ""For i = 1 To 30Label1.Text &= f(i) & ","If i Mod 6 = 0 Then Label1.Text &= vbCrLfNextEnd Sub。