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
- 上一篇:党支部主题党日活动总结
- 下一篇:艺文之末品——民间书信阅读答案