vb2008

  • 格式:docx
  • 大小:19.90 KB
  • 文档页数:13

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles

Button1.Click

Dim i As Integer

Dim sum, score1 As Long

sum = 0

For i = 1 To 30

score1 = Val(InputBox("请输入第" & Str(i) & "个账单"))

sum = sum + score1

Next

TextBox1.Text = sum

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles

Button2.Click

Close() End Sub

XT5-2 编写应用程序读入一个整数分析它是几位数。

Dim i, x, n As Integer

n = InputBox("输入数字")

n = n \ 10

x = 1

While n <> 0

n = n \ 10

x = x + 1

End While

MsgBox("输入数字是" + Str(x) + "位数") 如果还要求输出各位数字之和

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)

Handles Button1.Click

Dim i, sum, n1 As Integer

Dim num, s1 As String

num = Val(InputBox("请输入一个不多于五位的十进制整数"))

n1 = Len(num)

TextBox1.Text = n1

For i = 1 To n1

s1 = Mid(num, i, 1)

sum = sum + s1

Next

TextBox2.Text = sum

End Sub

XT5-3 编写程序计算并输出下面数列前n项的和 (设n=20,结果取4位小数)。

数列为 2/1,3/2,5/3,8/5,13/8,21/13,……

Dim s As Double Dim n, m, i, t As Integer

s = 0 : m = 1 : n = 2

For i = 1 To 20

s = s + n / m

t = n

n = m + n

m = t

Next

MsgBox(format(s,”0.0000”))

XT5-4 完全数

Dim i, j, n As Integer

Dim sum As Double

Dim a, str1 As String

a = Chr(13) + Chr(10)

str1 = "完全数" + a

For i = 2 To 10000

sum = 0

For j = 1 To i / 2

If i Mod j = 0 Then

sum = sum + j

End If

Next j

If i = sum Then

n = i

str1 = str1 + Str(n) + a

TextBox1.Text = str1

End If

Next i

XT5-6 阶乘小于9999的那个自然数是多少

Dim base, s, tmps, i As Double

base = 1

s = 1

tmps = 0

Do While s < 9999

s = 1

base = base + 1

For i = 1 To base

s = s * i

Next

tmps = s

Loop TextBox1.Text = "阶乘小于9999的那个自然数是" & base - 1

XT5-9 回文数

Dim a, b, d, m, i, x As Integer

For i = 10000 To 50000

m = i Mod 10

d = (i \ 10) Mod 10

b = (i \ 1000) Mod 10

a = i \ 10000

If a = m And b = d Then

TextBox1.Text += i.ToString() + " "

x = x + 1

If x Mod 5 = 0 Then

TextBox1.Text += vbCrLf

End If

End If

Next

XT5-8 编写应用程序读入一行字符统计其中有字母、数字、空格和其它字符各有几个。

Dim s, s1 As String

Dim c, n, k, i, q, m As Integer

s = InputBox("enter string")

m = Len(s)

For i = 1 To m

s1 = Mid(s, i, 1)

If (s1 >= "a" And s1 <= "z") Or (s1 >= "A" And s1 <= "Z") Then

c = c + 1

ElseIf (s1 >= "0" And s1 <= "9") Then

n = n + 1

ElseIf (s1 = " ") Then

k = k + 1

Else

q = q + 1

End If

Next

MsgBox("字符数" + Str(c) + "数字数" + Str(n) + "空格" + Str(k) + "其他" + Str(q))

5-9 编写应用程序统计并逐行显示每行5个数在区间[1000050000]上的回文数。回文数的含义是从左向右读与从右向左读是相同的即对称。如12321。

Dim w, q, b, s, g, i, m As Integer

Dim st As String

st = "" : m = 0

For i = 10000 To 50000

w = i \ 10000

q = (i Mod 10000) \ 1000

b = (i Mod 1000) \ 100

s = (i Mod 100) \ 10

g = i Mod 10

If w = g And q = s Then

st = st + Str(i) + Space(2)

m = m + 1

If m Mod 5 = 0 Then

st = st + Chr(13) + Chr(10)

End If

End If

Next

MsgBox(st)

XT 编写程序 设n=20x=3.4编写程序计算并输出S(n)的值要求结果保留5位小数。 S(n)=lnx/x+ln2x/x^2+ln3x/x^3+…+ln(n*x)/x^n+…其中ln为自然对数函数

Dim n As Integer

Dim s, x As Double

s = 0

x = 3.4

For n = 1 To 20

s = s + Math.Log(n * x) / (x ^ n)

Next n

MsgBox(Format(s, "0.00000"))

XT 编写程序计算并输出所有6位正整数中同时能被13和20整除的数的个数n及它们的立方根的和。

Dim n, i As Integer

Dim s As Double

n = 0 : s = 0 F or i = 100000 To 999999

If i Mod 13 = 0 And i Mod 20 = 0 Then