1、VB题库程序设计程序设计第1题程序设计(5分)(题号:148)题目:(事件)单击窗体。 (响应)求1020之间所有素数的乘积并输出在窗体上。 将结果存入变量L中。注意:请在指定的事件内编写代码。答案:- Dim i As Integer Dim j As Integer Dim b As Boolean l = 1 b = False For i = 10 To 20 For j = 2 To i - 2 If i Mod j = 0 Then b = True End If Next If b = False Then l = l * i End If b = False Next Prin
2、t Str(l)-第2题程序设计(5分)(题号:150)题目:(事件)单击窗体。 (响应)求1 - 1/2 + 1/3 - 1/4 + + 1/99 - 1/100的值。 将结果存入变量J中。注意:请在指定的事件内编写代码。答案:- Dim i As Integer For i = 1 To 100 If i Mod 2 = 1 Then j = j + 1 / i ElseIf i Mod 2 = 0 Then j = j - 1 / i End If Next Print j-第3题程序设计(5分)(题号:131)【程序设计】题目:(事件)单击窗体。 (响应)已知S=1+1/4+1/9+1
3、/16+1/25+1/100, 结果输出在窗体上。将结果存入变量S中答案:-Dim i As Integers = 0For i = 1 To 10 s = s + 1 / (i i)NextPrint (s)-第4题程序设计(5分)(题号:152)【程序设计】题目:(事件)双击窗体。 (响应)求1+2+3+5+8+13+前20项的和,并将结 果在窗体上输出。将结果存入变量SUM中。注意:请在指定的事件内编写代码。答案:- Dim i As Integer Dim j(1 To 20) As Integer For i = 1 To 20 If i 3 Then j(i) = i Else j
4、(i) = j(i - 1) + j(i - 2) End If sum = sum + j(i) Next Print sum-第5题程序设计(5分)(题号:157)【程序设计】题目:(事件)单击窗体。 (响应)求10!的值,并将结果输出到窗体上。 将结果存入变量SUM中。注意:请在指定的事件内编写代码。答案:- Dim i As Integer sum = 1 For i = 1 To 10 sum = sum * i Next Print sum-第6题程序设计(5分)(题号:489)题目: (事件)单击窗体。 (响应)已知sum=1-1/3!+1/5!-1/7!+1/9!, 请将sum
5、结果值输出到窗体上。 使用do while.loop语句完成程序注意:请在指定的事件内编写代码。答案:-Dim i As IntegerDim n As Integeri = 1p = 1Do While i = 10 p = p * i If i Mod 2 = 1 Then n = n + 1 sum = sum + (-1) (n - 1) / p End If i = i + 1LoopPrint sum-第7题程序设计(5分)(题号:154)【程序设计】题目:(事件)单击窗体。 (响应)求100以内偶数的和,并将结果输出在窗体上。 将结果存入变量SUM中注意:请在指定的事件内编写代码
6、。答案:- Dim i As Integer For i = 1 To 100 If i Mod 2 = 0 Then sum = sum + i End If Next Print sum-第8题程序设计(5分)(题号:134)【程序设计】题目:(事件)双击窗体。 (响应)s=20+21+22+263,求s的值,并将结果 存储到变量S中。注意:请在指定的事件内编写代码。答案:-Dim i As Integeri = 20While i 3000 then exit for endif endifi=i+1nextPrint sum-第5题程序设计(5分)(题号:156)【程序设计】题目:(事
7、件)双击窗体。 (响应)求3+6+9+12+15+18+300的和,并将结 果输出到窗体上。将结果存入变量 SUM中。注意:请在指定的事件内编写代码。答案:- Dim i As Integer For i = 3 To 300 If i Mod 3 = 0 Then sum = sum + i End If Next Print sum-第6题程序设计(5分)(题号:412)【程序设计】题目: (事件)单击窗体。 (响应)输出所有的三位数,它满足该数中有某两位 为相同的数,且该数是一个完全平方数。 求出所有这些数的和,并将结果存入变量SUM中。注意:请在指定的事件内编写代码。答案:-dim a
8、 as integer,b as integerdim b3 as integer,b2 as integer,b1 as integerfor a=10 to 31b=a*ab3=b100b2=(b10) mod 10b1=b mod 10if b1=b2 or b1=b3 or b2=b3 then? a,bsum=sum+bend ifnext a? sum-第7题程序设计(5分)(题号:487)【程序设计】题目: (事件)单击窗体。 (响应)已知s=1+1/3!+1/5!+1/7!+1/9!,请将s结果值 输出到窗体上。使用do while.loop语句完成程序 注意:请在指定的事件内
9、编写代码。答案:-Dim i As Integeri = 1p = 1Do While i = 9 p = p * i If i Mod 2 = 1 Then s = s + 1 / p End If i = i + 1Loop Print ssum=s第8题程序设计(5分)(题号:496)【程序设计】题目: (事件)单击窗体。 (响应)求1-100中为5或7的倍数的和。请将结果 输出到窗体上,并存入所给变量SUM中。 使用while.wend语句完成程序注意:请在指定的事件内编写代码。答案:-Dim i As Integer i = 1 While i = 100 If i Mod 5 =
10、0 Or i Mod 7 = 0 Then Sum = Sum + i End If i = i + 1WendPrint Sum-第9题程序设计(5分)(题号:500)【程序设计】题目:(事件)单击窗体。 (响应)输出一个如图所示的由数字组成的倒三角形 请将结果存入变量S中(要求利用msgbox函数 显示结果,使用for.next语句完成程序)注意:请在指定的事件内编写代码。答案:-Dim tmp As StringDim i As Integer, j As Integertmp = For i = 10 To 1 Step -1For j = 0 To i - 1 tmp = tmp &
11、 CStr(j)Nexttmp = tmp & vbCrLfNextMsgBox tmps = tmp第1题程序设计(1分)(题号:478)【程序设计】题目:编写函数fun,其功能是:能计算从1开始到n的 自然数中偶数的平方的和。-注意:请在指定的函数过程内编写代码。-答案:- Dim sum As Integer, i As Integer sum = 0 For i = 2 To n Step 2 sum = sum + i * i Next fun = sum-第2题程序设计(1分)(题号:465)【程序设计】题目:判断一个数是否是素数。注意:请在指定的事件内编写代码。答案:- Dim
12、i As Integer Prime = True For i = 2 To Int(Sqr(m) If m Mod i = 0 Then Prime = False: Exit For Next i第3题程序设计(1分)(题号:473)【程序设计】题目:将一张面值为100元的人民币等值换成100张5元、 1元和0.5元的零钞,要求每种零钞不少于1张, 问有哪几种组合?将组合数存入变量OUT中。注意:请在指定的事件内编写代码。答案:-Dim n As IntegerDim i%, j%, k%Print 5? 1? 0.5?For i = 1 To 20 For j = 1 To 100 -
13、i k = 100 - i - j If 5# * i + 1# * j + 0.5 * k = 100 Then Print i, j, k n = n + 1 End If Next j Next i out = n-第4题程序设计(1分)(题号:469)【程序设计】题目:用迭代法求某个数的平方根。 已知求平方根的迭代公式如图:算法思想:对于一个问题的求解x,可由给定的一个初值x0,根据某一 迭代公式得到一个新的值x1,这个新值x1比初值x0更接近要求的值x; 再以新值作为初值,即:x1x0,重新按原来的方法求x1,重复这一过和 直到|x1-x0| 0.00001 Fsqrt = x1-第
14、5题程序设计(1分)(题号:472)【程序设计】题目:统计字符串中的单词个数。算法思路: (1)从文本(字符串)的左边开始,取出一个字符; 设逻辑量WT表示所取字符是否是单词内的字符,初值设为False (2)若所取字符不是空格,逗号,分号或感叹号等单词 的分隔符,再判断WT是否为True,若WT不为True则表是新单词的开始, 让单词数Nw=Nw+1,让WT=True; (3)若所取字符是空格,逗号,分号或感叹号等单词的分隔符, 则表示字符不是单词内字符,让WT=False; (4) 再依次取下一个字符,重得(2)(3)直到文本结束。注意:请在指定的事件内编写代码。答案:- Dim nw A
15、s Integer, nL As Integer Dim i As Integer Dim strT As String Dim Wt As Boolean nw = 0: Wt = False nL = Len(RTrim(strI) For i = 1 To nL strT = Mid$(strI, i, 1) 取第i个字符 Select Case strT Case , , ;, ! Wt = False Case Else If Not Wt Then nw = nw + 1 Wt = True End If End Select Next i CountWord = nw第6题程序设
16、计(1分)(题号:481)【程序设计】题目:编写函数fun其功能是:根据整型形参m,计算如下公式的值: y=11/31/51/7.1/(2m+1) 例如:若m=9,则应输出:2.133255注意:请在指定的事件内编写代码。答案:- Dim y As Double Dim i As Integer y = 1 For i = 1 To m y = y + 1 / (2 * i + 1) Next fun = y-第7题程序设计(1分)(题号:479)【程序设计】题目:编写函数fun其功能是:根据整型形参m,计算 如下公式的值:y=1/21/41/6.1/2m 例如:若m=9,则应输出:1.414
17、48412698413注意:请在指定的函数过程内编写代码。答案:- Dim y As Double Dim i As Integer For i = 1 To m y = y + 1 / (2 * i) Next fun = y-第8题程序设计(1分)(题号:470)【程序设计】题目:将一个十进制整数m转换成 r(216)进制字符串。方法:将m不断除 r 取余数,直到商为零,以反序得到结果。 下面写出一转换函数,参数idec为十进制数,ibase为要转 换成数的基(如二进制的基是2,八进制的基是8等), 函数输出结果是字符串?注意:请在指定的事件内编写代码。答案:- Dim strDecR$,
18、 iDecR% strDecR = Do While idec 0 iDecR = idec Mod ibase If iDecR = 10 Then strDecR = Chr$(65 + iDecR - 10) & strDecR Else strDecR = iDecR & strDecR End If idec = idec ibase Loop TrDec = strDecR-第9题程序设计(1分)(题号:471)【程序设计】-题目:对字符串进行加密处理。 加密过程: 将每个字母C加一序数K5,即 c=chr(Asc(c)-5), 这时 ZU, zu,YT 当加序数后的字母小于A或a
19、则 c=Chr(Asc(c)-k +26)注意:请在指定的事件内编写代码。答案:- Dim i As Integer Dim strp As String, strT As String, iA As String Dim nl As String i = 1: strp = nl = Len(RTrim(strI) Do While (i = A And strT Asc(Z) Then iA = iA - 26 strp = strp + Chr$(iA) ElseIf (strT = a And strT Asc(z) Then iA = iA - 26 strp = strp + Chr$(iA) Else strp = strp + strT End If i = i + 1 Loop EnyStr = strp-第10题程序设计(1分)(题号:483)【程序设计】题目:编写函数fun,函数的功能是:求1到m 之间的偶数之积。注意:请在指定的函数过程内编写代码。答案:- Dim y As Double y = 1 Dim i As Integer For i = 1 To m If i Mod 2 = 0 Then y = y * i End If Next fun = y-第11题程序设计(1分)(题号:468)【程序设计】-