第一文秘网    > 工作总结

VB程序大题

作者:jnscsh   时间:2020-07-10 14:18:00   浏览次数:

  [ [ 题目] ] 计算公式1 217151311     nS 的和,当第n项的值<10 -5 时结束。

 【编程要求】

 1、单击"计算"按钮,则将计算结果显示在文本框中Text1中;单击"清除"按钮,则清除文本框的内容; 单击"退出"按钮,程序停止运行。

 2、界面应与给出的参考界面相似,不得增加或减少控件。

  答案

 sum = 0

  n = 1

  x = 1

  Do While x >= 0.0001

  sum = sum + x

  n = n + 1

  x = 1 / (2 * n - 1)

  Loop Text1.Text = sum 2 [ [ 题目] ] 随机生成一个由两位随机整数构成的5行5列的矩阵,求该矩阵中所有不靠边元素之和。

 [ [ 编程要求] ]

 程序中有一个过程sum(),该过程的功能是求一个数组的不靠边元素之和。

 完成此函数的功能

  【参考代码】

  Dim i As Integer, j As Integer

  For i = LBound(b) + 1 To UBound(b) - 1

  For j = LBound(b) + 1 To UBound(b) - 1

  sum = sum + b(i, j)

  Next j

  Next i 3 [ [ 题目] ] 编写程序,求任意两个正整数的最小公倍数。

 【编程要求】

 1、单击"计算"按钮,在文本框Text3中显示最小公倍数;单击"清除"按钮,则清除3个文本框中的内容,

 于文本框Text1;单击"结束"按钮,程序停止运行。

 2、界面应与给出的参考界面相似,不得增加或减少控件; 3、运行程序,并输入3、7进行检验。

 【参考代码】

 m = Val(Text1): n = Val(Text2) If m < n Then t = m: m = n: n = t mn = m * n r = m Mod n Do While r <> 0

  m = n: n = r

  r = m Mod n Loop

  Text3 = mn / n 4 [ [ 题目] ] 编写程序,求n!,并显示前7项结果。

 [ [ 编程要求] ]

 1、按"执行"按钮,则开始运行程序,按图示格式将前7项阶乘显示在列表框list1中。

 1、 按"清除"按钮,则将列表框list1中的内容清空。按"结束"按钮,结束程序的执行。

 2、 程序中有一个函数过程,该过程的功能是使用 递归函数求任意一个数的阶乘。

 【参考代码】

 If n = 0 Or n = 1 Then

 fact = 1

 Else

 fact = n * fact(n - 1)

 End If 5 [ [ 题目] ] 求任意一个正整数n的逆序数。

 例如:432的逆序数为234,210619的逆序数为916012。要求程序具有能用性,即对于输入的整数或长整数不限制位数都能求。

 [ 编程要求] 1、在文本框Text1中输入正整数 n 后,单击"计算"按钮,则结果显示在文本框Text2中; 2、单击"清空"按钮,则清空所有文本框的内容; 3、单击"退出"按钮,程序停止运行; 4、界面应与参考界面相似,不得增加或减少控件; 5、运行程序,并输入14587检验。

 【参考代码】

  n = Val(Text1)

  Do While n <> 0

  a = n Mod 10

  m = m * 10 + a

  n = n \ 10

  Loop

  Text2 = CStr(m) 6 [ [ 题目] ]随机生成500个4位正整数,将其置于文本框1中,从中找出回文数,置于文本框2中。并找出值最小的回文数,显示在文本框3中。

 [ [ 编程要求] ]

 1、按"运行"按钮,将运行结果按图示格式显示在文本框中;按"清除"按钮,将文本框清空,按"退出"按钮,结束程序运行; 2、程序中有一个名为HuiWenShu( )的函数过程,用于判断一个数是否为回文数。

 3、在运行按钮的单击事件中完成此按钮功能功能。

 【参考代码】

 For i = 1 To 500

  a(i) = Int((9999 - 1000 + 1) * Rnd + 1000)

  Text1 = Text1 & a(i) & vbCrLf

 Next i

 Min = 9999

 For i = 1 To 500

 If huiwenshu(CStr(a(i))) Then

 Text2 = Text2 & a(i) & vbCrLf

  If a(i) < Min Then Min = a(i)

 End If

 Next i

 Text3 = Min 7 题目] ] 生成10个随机的两位正整数,并求出其最大值、最小值、平均值以及总和。

 【编程要求】

 1、单击"生成随机数"按钮,生成10个两位随机正整数并显示在列表框中; 单击"求最大最小等"按钮,则求出其最大值、最小值、平均值以及总和并显示在相应文本框中; 单击"重置"按钮,将列表框和所有文本框清空,并将焦点置于"生成随机数"按钮上。

 2、界面应与给出的参考界面相似,不得增加或减少控件。

  【参考代码】

  Dim i As Integer

  Dim max As Integer

  Dim min As Integer

  Dim sum As Integer

  max = a(1): min = a(1): sum = a(1)

  For i = 1 To 10

  sum = sum + a(i)

  If max < a(i) Then max = a(i)

  If min > a(i) Then min = a(i)

  Next i

  txtMax.Text = CStr(max)

  txtMin.Text = CStr(min)

  txtSum.Text = CStr(sum)

  txtAvg.Text = CStr(sum / 10) 8

  [ [ 题目] ] 求出1000以内的所有孪生素数(如果两个素数之差为2,则称这两个素数为一对孪生素数,如3和5, 5和7等),显示在列表框中。

 [ [ 编程要求] ]

 1、按"执行"按钮,则开始运行程序,求出1000以内的所有孪生素数,显示在列表框中。

 2、按"清空"按钮,则将列表框中的内容清空。按"退出"按钮,结束程序的执行。

 3、程序中有一个过程IsPrime,该过程的功能是判断一个数是否是素数。

 【参考代码】

  Dim i As Integer

  IsPrime = False

  For i = 2 To Sqr(n)

  If n Mod i = 0 Then Exit Function

  Next i

  IsPrime = True 9 [ [ 题目] ] 编写程序,求出给定正整数的所有质因子,并将质因子全部输出。如:342有质因子2,3,3,19。

 【编程要求】

 1、 单击"执行"按钮,参考图示界面,将文本框Text1中输入的正整数的所有质因子输出在图片框Picture1 中; 2、 单击"清除"按钮,清除文本框Text1与图片框Picture1中的内容,将焦点设置在文本框Text1中;单击"结束"按钮,程序停止运行。

 3、界面应与给出的参考界面相似,不得增加或减少控件; 4、运行程序,并输入342进行检验。

  【参考代码】

  Do

  If x Mod i = 0 Then

  n = n + 1

  ReDim Preserve a(n)

  a(n) = i

  x = x \ i

  i = 2

  Else

  i = i + 1

  End If Loop Until x = 1 10 [ [ 题目] ] 随机生成一个由两位随机整数构成的5行5列的矩阵,求该矩阵中所有不靠边元素之和。

 [ [ 编程要求] ]

 程序中有一个过程sum(),该过程的功能是求一个数组的不靠边元素之和。

 完成此函数的功能

 【参考代码】

  Dim i As Integer, j As Integer

  For i = LBound(b) + 1 To UBound(b) - 1

  For j = LBound(b) + 1 To UBound(b) - 1

  sum = sum + b(i, j)

  Next j

  Next i

  11 [ [ 题目] ] 已知:买一只公鸡需5元,买一只母鸡需3元,买三只小鸡需1元。要用100元买100只鸡,公鸡母鸡和小鸡各有多少只?

 【编程要求】

 1、单击"计算"按钮,则将计算结果显示在列表框List1中;单击"清除"按钮,则清除列表框的内容;单击"退出"按钮,程序停止运行。

 2、界面应与给出的参考界面相似,不得增加或减少控件。

 【参考代码】

 For x = 1 To 20

  For y = 1 To 33

  z = 100 - x - y

  If 5 * x + 3 * y + z / 3 = 100 Then List1.AddItem Str(x) + "

  " + Str(y) + "

  " + Str(z)

  Next y Next x 12

 [ [ 题目] ] 生成一个由1位数字组成的大小为4*4的矩阵,并求出该矩阵的靠边元素之和。

 [ [ 编程要求] ]

 程序中有一个过程sum(),该过程的功能是计算矩阵的靠边元素之和。

 完成此函数的功能。

 【参考代码】

  Dim u1 As Integer, u2 As Integer, i As Integer

  sum = 0

  u1 = UBound(a, 1)

  u2 = UBound(a, 2)

  For i = 1 To u1

  For j = 1 To u2

  If i = 1 Or i = u1 Or j = 1 Or j = u2 Then sum = sum + a(i, j)

  Next j

  Next i 13 题目] ] 编写程序,求出给定正整数的所有质因子,并将质因子全部输出。如:342有质因子2,3,3,19。

 【编程要求】

 1、 单击"执行"按钮,参考图示界面,将文本框Text1中输入的正整数的所有质因子输出在图片框Picture1 中; 2、 单击"清除"按钮,清除文本框Text1与图片框Picture1中的内容,将焦点设置在文本框Text1中;单击"结束"按钮,程序停止运行。

 3、界面应与给出的参考界面相似,不得增加或减少控件; 4、运行程序,并输入342进行检验。

  【参考代码】

  Do

  If x Mod i = 0 Then

  n = n + 1

  ReDim Preserve a(n)

  a(n) = i

  x = x \ i

  i = 2

  Else

  i = i + 1

  End If

  Loop Until x = 1 14 [ [ 题目] ] 随机生成一个由两位随机整数构成的5行5列的矩阵,求该矩阵中所有不靠边元素之和。

 [ [ 编程要求] ]

 程序中有一个过程sum(),该过程的功能是求一个数组的不靠边元素之和。

 完成此函数的功能

 【参考代码】

  Dim i As Integer, j As Integer

  For i = LBound(b) + 1 To UBound(b) - 1

  For j = LBound(b) + 1 To UBound(b) - 1

  sum = sum + b(i, j)

  Next j

  Next i 15 [ [ 题目] ] 生成10个随机的两位正整数,并求出其最大值、最小值、平均值以及总和。

 【编程要求】

 1、单击"生成随机数"按钮,生成10个两位随机正整数并显示在列表框中; 单击"求最大最小等"按钮,则求出其最大值、最小值、平均值以及总和并显示在相应文本框中; 单击"重置"按钮,将列表框和所有文本框清空,并将焦点置于"生成随机数"按钮上。

 2、界面应与给出的参考界面相似,不得增加或减少控件。

  【参考代码】

  Dim i As Integer

  Dim max As Integer

  Dim min As Integer

  Dim sum As Integer

  max = a(1): min = a(1): sum = a(1)

  For i = 1 To 10

  sum = sum + a(i)

  If max < a(i) Then max = a(i)

  If min > a(i) Then min = a(i)

  Next i

  txtMax.Text = CStr(max)

  txtMin.Text = CStr(min)

  txtSum.Text = CStr(sum) txtAvg.Text = CStr(sum / 10) 16

 [ [ 题目] ] 求出1000以内的所有孪生素数(如果两个素数之差为2,则称这两个素数为一对孪生素数,如3和5, 5和7等),显示在列表框中。

 [ [ 编程要求] ]

 1、按"执行"按钮,则开始运行程序,求出1000以内的所有孪生素数,显示在列表框中。

  2、按"清空"按钮,则将列表框中的内容清空。按"退出"按钮,结束程序的执行。

 3、程序中有一个过程IsPrime,该过程的功能是判断一个数是否是素数。

 【参考代码】

  Dim i As Integer

  IsPrime = False

  For i = 2 To Sqr(n)

  If n Mod i = 0 Then Exit Function

  Next i

  IsPrime = True 17 [ [ 题目] ] 编一程序,显示所有的水仙花数,所谓水仙花数,是指一个3位数,其各位数字立方和等于该数字本身。

 例如,153是水仙花数,因为153=1 3 +5 3 +3 3

 【编程要求】

 1、单击"计算"按钮,则将计算结果显示在多行文本框中Text1中;单击"结束"按钮,程序停止运行。

 2、界面应与给出的参考界面相似,不得增加或减少控件。

 3、求出范围100-999之间的水仙花数

  【参考代码】

 Text1.Text = "" For i = 100 To 999

  a = i \ 100

  c = i Mod 10

  b = i \ 10 Mod 10

  If i = a ^ 3 + b ^ 3 + c ^ 3 Then

  Text1.Text = Text1.Text & i & vbCrLf

  End If Next i 18 [ [ 题目] ] 输入两个数,求最大公约数和最小公倍数。

 [ [ 编程要求] ]

 1、 输入数值后,按"计算"按钮,计算出最大公约数和最小公倍数按"清除"按钮,

  则将所有文本框中的内容清空,并将光标焦点指向text1。按"结束"按钮,结束程序的执行。

  2、

 程序中有一个过程,该过程的功能是求两个数的最大公约数。

  【参考代码】

 Dim k As Integer Do

  k = m Mod n

  m = n

  n = k Loop While (k <> 0) gcd = m 19 输入一个正整数k,将k的各位数字分离后,累加求和。程序界面如下图所示。

 【编程要求】

 1、单击"计算"按钮,将结果在文本框中显示出来。

 2、单击"清除"按钮,将二个文本框中的内容清空;单击"结束"按钮,程序停止运行。

 3、界面应与给出的参考界面相似,不得增加或减少控件; 4、运行程序,并输入123456检验。

 【参考代码】

  x = Val(Text1)

  s = 0

  Do While x <> 0

  t = x Mod 10

  s = s + t

  x = x \ 10

  Loop

  Text2 = s 20 [ [ 题目] ] 随机生成由10个两位正整数组成的数组,并使用冒泡法对该数组进行排序。

 [ [ 编程要求] ]

 1、按"排序"按钮,则开始生成随即数组,按图示格式将数组显示在文本框Text1中;

 然后进行排序,并将排序后的数组显示在文本框Text2中。

 2、按"清除"按钮,则将Text1,Text2两文本框中的内容清空。按"退出"按钮,结束程序的执行。

 界面应与给出的参考界面相似,不得增加或减少控件。

 3、程序中有一个过程,该过程的功能是使用冒泡法对数组进行排序。

 【参考代码】

 For i = 1 To 9

  Switch = False

  For j = 1 To 10 - i

  If a(j) > a(j + 1) Then

  t = a(j): a(j) = a(j + 1): a(j + 1) = t

  Switch = True

  End If

  Next j

  If Not Switch Then Exit For Next i

 21 输入一个正整数k,将k的各位数字分离后,累加求和。程序界面如下图所示。

 【编程要求】

 1、单击"计算"按钮,将结果在文本框中显示出来。

 2、单击"清除"按钮,将二个文本框中的内容清空;单击"结束"按钮,程序停止运行。

 3、界面应与给出的参考界面相似,不得增加或减少控件; 4、运行程序,并输入123456检验。

 【参考代码】

  x = Val(Text1)

  s = 0

  Do While x <> 0

  t = x Mod 10

  s = s + t

  x = x \ 10

  Loop Text2 = s、 22 [ [ 题目] ] 随机生成由10个两位正整数组成的数组,并使用冒泡法对该数组进行排序。

 [ [ 编程要求] ]

 1、按"排序"按钮,则开始生成随即数组,按图示格式将数组显示在文本框Text1中;

 然后进行排序,并将排序后的数组显示在文本框Text2中。

 2、按"清除"按钮,则将Text1,Text2两文本框中的内容清空。按"退出"按钮,结束程序的执行。

 界面应与给出的参考界面相似,不得增加或减少控件。

 3、程序中有一个过程,该过程的功能是使用冒泡法对数组进行排序。

 【参考代码】

 For i = 1 To 9

  Switch = False

  For j = 1 To 10 - i

  If a(j) > a(j + 1) Then

  t = a(j): a(j) = a(j + 1): a(j + 1) = t

  Switch = True

  End If

  Next j

  If Not Switch Then Exit For Next i 23 [ [ 题目] ] 求任意一个正整数n的逆序数。

 例如:432的逆序数为234,210619的逆序数为916012。要求程序具有能用性,即对于输入的整数或长整数不限制位数都能求。

 [ 编程要求] 1、在文本框Text1中输入正整数 n 后,单击"计算"按钮,则结果显示在文本框Text2中; 2、单击"清空"按钮,则清空所有文本框的内容; 3、单击"退出"按钮,程序停止运行; 4、界面应与参考界面相似,不得增加或减少控件; 5、运行程序,并输入14587检验。

  【参考代码】

  n = Val(Text1)

  Do While n <> 0

  a = n Mod 10

  m = m * 10 + a

  n = n \ 10

  Loop

  Text2 = CStr(m) 24 [ [ 题目] ]随机生成500个4位正整数,将其置于文本框1中,从中找出回文数,置于文本框2中。并找出值最小的回文数,显示在文本框3中。

 [ [ 编程要求] ]

 1、按"运行"按钮,将运行结果按图示格式显示在文本框中;按"清除"按钮,将文本框清空,按"退出"按钮,结束程序运行; 2、程序中有一个名为HuiWenShu( )的函数过程,用于判断一个数是否为回文数。

 3、在运行按钮的单击事件中完成此按钮功能功能。

  【参考代码】

 For i = 1 To 500

  a(i) = Int((9999 - 1000 + 1) * Rnd + 1000)

  Text1 = Text1 & a(i) & vbCrLf

 Next i

 Min = 9999

 For i = 1 To 500

 If huiwenshu(CStr(a(i))) Then

 Text2 = Text2 & a(i) & vbCrLf

  If a(i) < Min Then Min = a(i)

 End If

 Next i

 Text3 = Min 25 [ [ 题目] ] 求100以内的所有的完数。所谓完数是指所有因子(含1,不含本身)之和等于它本身的数。例如:6=1+2+3 【编程要求】

 1、单击"计算"按钮,则将计算结果显示在列表框List1中;单击"清除"按钮,则清除列表框中的内容;单击"结束"按钮,程序停止运行。

 2、界面应与给出的参考界面相似,不得增加或减少控件。

 【参考代码】

  sum = 0

  For x = 2 To 100

  For i = 1 To x - 1

  If x Mod i = 0 Then sum = sum + i

  Next i

  If sum = x Then List1.AddItem CStr(x)

  sum = 0

  Next x 26 [ [ 题目] ] 随机生成一个4行4列的矩阵,要求数字为两位正整数,然后完成对该矩阵的转置。

 所谓矩阵的转置是指将矩阵的行列交换,如图所示。

 [ [ 编程要求] ]

 1、按"执行"按钮,则开始运行程序,按图示格式将产生的矩阵显示在多行文本框text1中,将转置后的矩阵显示在文本框text2中。

 2、按"清除"按钮,则将text1,text2两文本框中的内容清空。按"结束"按钮,结束程序的执行。

 3、程序中有一个过程,该过程的功能是完成对矩阵的转置。

  【参考代码】

 For i = 1 To 4

 For j = 1 To 4

 a(i, j) = Int(Rnd * 90) + 10

 Text1 = Text1 & a(i, j) & " "

 Next j

 Text1 = Text1 & vbCrLf Next i Call zhzh(a) For i = 1 To 4

 For j = 1 To 4

  Text2 = Text2 & a(i, j) & " "

 Next j

 Text2 = Text2 & vbCrLf Next i 27 [ [ 题目] ] 求任意一个正整数n的逆序数。

 例如:432的逆序数为234,210619的逆序数为916012。要求程序具有能用性,即对于输入的整数或长整数不限制位数都能求。

 [ 编程要求] 1、在文本框Text1中输入正整数 n 后,单击"计算"按钮,则结果显示在文本框Text2中; 2、单击"清空"按钮,则清空所有文本框的内容; 3、单击"退出"按钮,程序停止运行; 4、界面应与参考界面相似,不得增加或减少控件; 5、运行程序,并输入14587检验。

  【参考代码】

  n = Val(Text1)

  Do While n <> 0

  a = n Mod 10

  m = m * 10 + a

  n = n \ 10

  Loop

  Text2 = CStr(m) 28

  [ [ 题目] ]随机生成500个4位正整数,将其置于文本框1中,从中找出回文数,置于文本框2中。并找出值最小的回文数,显示在文本框3中。

 [ [ 编程要求] ]

 1、按"运行"按钮,将运行结果按图示格式显示在文本框中;按"清除"按钮,将文本框清空,按"退出"按钮,结束程序运行; 2、程序中有一个名为HuiWenShu( )的函数过程,用于判断一个数是否为回文数。

 3、在运行按钮的单击事件中完成此按钮功能功能。

 【参考代码】

 For i = 1 To 500

  a(i) = Int((9999 - 1000 + 1) * Rnd + 1000)

  Text1 = Text1 & a(i) & vbCrLf

 Next i

 Min = 9999

 For i = 1 To 500

 If huiwenshu(CStr(a(i))) Then

 Text2 = Text2 & a(i) & vbCrLf

  If a(i) < Min Then Min = a(i)

 End If

 Next i

 Text3 = Min 29

推荐访问:大题 程序 VB