收藏 分销(赏)

2021年大学计算机VB考试上机题库.doc

上传人:二*** 文档编号:4512359 上传时间:2024-09-26 格式:DOC 页数:24 大小:37.54KB
下载 相关 举报
2021年大学计算机VB考试上机题库.doc_第1页
第1页 / 共24页
本文档共24页,全文阅读请下载到手机保存,查看更方便
资源描述
1、求100以内素数。 Private Sub Form_Click() Dim i%, j% For i = 2 To 100   For j = 2 To i - 1     If i Mod j = 0 Then Exit For   Next j     If j = i Then Print i Next i End Sub 2、从键盘输入任意长度字符串,规定将字符顺序倒置,例如,将输入“ABCDEFG”变换成“GFEDCBA”。 Private Sub Command1_Click() Dim a$, I%, c$, d$, n% a = InputBox$("输入字符串") n = Len(a) For I = 1 To Int(n \ 2)    c = Mid(a, I, 1)    Mid(a, I, 1) = Mid(a, n - I + 1, 1)    Mid (a, n - I + 1, 1) = c    Next I    Print a    End Sub 3、计算0~200之间所有能被11或5整除数之和 Private Sub Form_Click() Dim n%, i% n = 0   For i = 1 To 200     If i Mod 11 = 0 Or i Mod 5 = 0 Then     n = n + i     End If   Next i  Print n End Sub 4、输入一年份,判断它与否为闰年,并显示关于信息。(判断闰年条件是:年份能被4整除但不能被100整除,或者能被400整除) Private Sub Command1_Click() Dim y% y = InputBox("请输入年数") If y Mod 4 = 0 And y Mod 100 <> 0 Or y Mod 400 = 0 Then   MsgBox (y & "年是闰年") Else   MsgBox (y & "年是平年") End If End Sub 5、已知x,y,z 3个变量中存储了3个不同数,比较它们大小并进行调节,使得x<y<z。 Private Sub Command1_Click() Dim x!, y!, z! x = InputBox("inputx") y = InputBox("inputy") z = InputBox("inputz") Print "       x      y     z" If x > y Then t = x: x = y: y = t If x > z Then t = x: x = z: z = t If y > z Then t = y: y = z: z = t Print "排序后"; x; "  "; y; "   "; z End Sub 6、求s=a+aa+aaa+...aaaaa(n个a),其中a和n值随机产生,a范畴是[1,9]整数,n范畴是[5,10]。如a=3,n=6,则s=3+33+333+3333+33333+333333。编程拟定n和a值,并计算s。 Private Sub Form_Click()    Dim s!, t!, i!, a%, n%    a = Int(Rnd * 9 + 1)    n = Int(Rnd * 6 + 5)    t = 0: s = 0    Print "a="; a, "n="; n    For i = 1 To n        t = t * 10 + a        s = s + t        Print t;    Next i    Print    Print "s="; s  End Sub 7、计算100~300之间所有能被3和7整除数之和。 Private Sub Form_Click() For i = 100 To 300 If i Mod 21 = 0 Then s = s + i Print i; End If Next i Print Print "s="; s End Sub 8、编程求200--400范畴内5倍数或7倍数之和。(一种数如果同步是7和5倍数,则只能加一次。) Private Sub Command1_Click()    Dim s1%,s2%,s3%,i%    S1=0 S2=0 For i=200 to 400 If i mod 5 =0 or i mod 7=0 then  s1=s1+i End if Next i  For i=200 to 400 If i mod 5 =0 or i mod 7=0 then  s2=s2+i End if Next i S3=s1-s2 Print s3 End sub 9、找出被3、5、7除,余数为1最小5个正整数。 Private Sub Command1_Click() Dim CountN%, n% CountN = 0 n = 1 Do  n = n + 1  If n Mod 3 = 1 And n Mod 5 = 1 And n Mod 7 = 1 Then      Print n     CountN = CountN + 1  End If  Loop Until CountN = 5  End Sub 10、某次歌曲大奖赛,有7个评委。如果分别输入7个评委对某个参赛者打分数,按照去掉一种最高分和一种最低分计算办法,求出该参赛者平均得分。 Private Sub Command1_Click() Dim mark!, max!, min!, aver!, i% aver = 0 For i = 1 To 7   mark = InputBox("输入第" & i & "位评委打分") If i = 1 Then   max = mark: min = mark Else   If mark < min Then min = mark   If mark > max Then max = mark End If aver = aver + mark Next i aver = (aver - min - max) / 5 Print aver End Sub 11、编程显示100~500之间所有水仙花数之和。(水仙花数是3位数,其各位数之和等于该数自身) Private Sub Form_Click() Dim i%, s%, s1%, s2%, s3%, a! a = 0 For i = 0 To 400 s = 99 + i s1 = (s Mod 100) \ 10 s2 = s Mod 10 s3 = s \ 100 If s1 ^ 3 + s2 ^ 3 + s3 ^ 3 = s Then a = s + a End If Next i Print a End Sub 12、随机产生一种三位正整数,然后逆序输出,产生数与逆序数同步显示。例如,产生246,输出是642。 Dim a%, m%, b%, c%, d% Private Sub Form_Click()  a = Int(Rnd * 900 + 100)  Print a   d = (a Mod 10) * 100   b = (a Mod 100) - (a Mod 10)   c = a \ 100   m = c + b + d   Print m End Sub 13、从键盘输入三角形三条边a,b,c值,依照其数值,判断能否构成三角形。 Private Sub Form_Click() Dim a%, b%, c%   a = Val(InputBox("input a"))   b = Val(InputBox("input b"))   c = Val(InputBox("input c")) If a + b > c And a + c > b And b + c > a Then   MsgBox ("能构成三角形") Else   MsgBox ("不能构成三角形") End If End Sub 14、已知数组a(),编程删除a中第5个元素。数组a中元素分别为{12,6,4,89,75,63,100,20,31}。 Private Sub Form_Click() Dim a(), i%, n%  a = Array(12, 6, 4, 89, 75, 63, 100, 20, 31)  n = UBound(a)  For i = 0 To n    Print a(i);  Next i   Print For i = 5 To n  a(i - 1) = a(i) Next i  n = n - 1 ReDim Preserve a(n) For i = 0 To n   Print a(i); Next i Print End Sub 15、随机生成一种整型二维数组,范畴在[10,20]之间,以上三角形式输出该数组。(下三角、所有元素)Dim a%(4, 4) Dim a%(4, 4) Private Sub Command1_Click() Picture1.Cls For i = 0 To 4   For j = i To 4     Picture1.Print Tab(j * 6); a(i, j);   Next j   Picture1.Print Next i End Sub Private Sub Form_Load() For i = 0 To 4   For j = 0 To 4     a(i, j) = Int(Rnd * 11 + 10)   Next j Next i End Sub 16、运用随机函数生成一种4×4矩阵(即二维矩阵),范畴是[20,50]内整数,输出每行中最大值和下标。 Private Sub Form_Click() Dim a%(3, 3), s0%, s1%, s2%, s3%, b0%, b1%, b2%, b3% Max = 40 For i = 0 To 3  For j = 0 To 3 a(i, j) = Int(Rnd * 31 + 20) Print Tab(j * 5); a(i, j); If a(0, j) >= Max Then s0 = a(0, j): b0 = j If a(1, j) >= Max Then s1 = a(1, j): b1 = j If a(2, j) >= Max Then s2 = a(2, j): b2 = j If a(3, j) >= Max Then s3 = a(3, j): b3 = j Next j Next i Print Print " 第一行"; s0; "("; 0; b0; ")" Print " 第二行"; s1; "("; 1; b1; ")" Print " 第三行"; s2; "("; 2; b2; ")" Print " 第四行"; s3; "("; 3; b3; ")" End Sub 17、运用随机函数生成一种4×4矩阵(即二维矩阵),范畴是[40,80]内整数,求它最大值及所相应下标。 Private Sub Form_Click() Dim a%(3, 3) Min = 80 For i = 0 To 3  For j = 0 To 3 a(i, j) = Int(Rnd * 41 + 40) Print Tab(j * 5); a(i, j); If a(i, j) <= Min Then Min = a(i, j): b = i: c = j End If Next j Next i Print Print "最小值为"; Min Print "其下标为"; "("; b, c; ")" End Sub 18、输入一系列字符串,编程求出长度最大字符串并输出其所相应顺序。 Private Sub Form_Click() Dim a(5) as string,b(4) as integer,t%,max%,imax% For i =1 to 5 a(i)=inputbox("a") Next i For i =0 to 4 b(i)=len(trim(a(i))) Next i Max=1 For i =0 to 4 If max<b(i) then max=b(i):imax=i Next i Print "max=";a(i) Print "cixu=",imax+1 End sub 19、运用随机函数生成一种4×4矩阵(即二维矩阵),范畴是[20,50]内整数,输出该矩阵所有数据之和     Private Sub Form_Click()     Dim a%(3, 3)     For i = 0 To 3      For j = 0 To 3     a(i, j) = Int(Rnd * 31 + 20)     Print Tab(j * 5); a(i, j);     Next j     Next i     s = a(0, 0) + a(1, 1) + a(2, 2) + a(3, 3) + a(3, 0) + a(2, 1) + a(1, 2) + a(0, 3)     Print s; End Sub 20、输入一系列字符串,将字符串按递减顺序排列。请编程实现。 Dim a() As String, n%, i%, j% Private Sub Command1_Click() n = Text1 ReDim a(1 To n) As String For i = LBound(a) To UBound(a) a(i) = InputBox("请输入字符串") Picture1.Print a(i); Spc(1); Next i End Sub   Private Sub Command2_Click() For i = 1 To n   For j = 1 To n - i   If a(j) < a(j + 1) Then t = a(j): a(j) = a(j + 1): a(j + 1) = t   Next j Next i For i = 1 To n Picture2.Print a(i); Spc(1); Next i End Sub   Private Sub Form_Load() Text1 = "" End Sub 21、随机产生10个[30,100]内整数,求最大值、最小值和平均值。 Dim a(1 To 10) As Integer, amin, amax, i%, avera! Private Sub Form_Click()  For i = 1 To 10     a(i) = Int(Rnd * 71 + 30)     Next i     amin = a(1)     amax = a(1)     avera = a(1)     For i = 2 To 10       If a(i) > amax Then amax = a(i)       If a(i) < amin Then amin = a(i)       avera = avera + a(i)     Next i     For i = 1 To 10       Print a(i);     Next i     Print     Print "max="; amax, "min="; amin, "avera="; avera / 10 End Sub 22、定义三个4×4二维数组A,B,C,A和B中元素均随机生成,数组A范畴是1~20,数组B范畴是100~200,数组C是A和B相乘得到。请编程生成并输出A,B,C。(相加)Dim a%(3, 3), b%(3, 3), c%(3, 3) Private Sub Command1_Click() Picture1.Cls For i = 0 To 3   For j = 0 To 3     Picture1.Print Tab(j * 6); a(i, j);   Next j   Picture1.Print Next i End Sub Private Sub Command2_Click() Picture2.Cls For i = 0 To 3   For j = 0 To 3     Picture2.Print b(i, j); "";   Next j   Picture2.Print Next i End Sub Private Sub Command3_Click() Picture3.Cls For i = 0 To 3   For j = 0 To 3     Picture3.Print Tab(j * 7); c(i, j);   Next j   Picture3.Print Next i End Sub Private Sub Form_Load() 23、随机产生15个小写字母,放在字符数组中。提示:c=chr(int(rnd*26+97)) Private Sub Command1_Click() Dim c$(14), i% Picture1.Cls For i = 0 To 14 c(i) = Chr(Int(Rnd * 26 + 97)) Next i For i = 0 To 14 Picture1.Print c(i); Next i End Sub 24、随机产生10个[30,100]内整数,求最大值及所相应下标 Private Sub Form_Click() Dim a(1 To 10) As Integer, i%, maxa%, m% For i = 1 To 10    a(i) = Int(Rnd * 70) + 30 Next i maxa = a(1) For i = 2 To 10    If a(i) > a(1) Then    maxa = a(i): m = i    End If Next i For i = 1 To 10  Print a(i); Next i  Print "maxa=" & maxa; "下标为" & m End Sub 25、定义三个4×4二维数组A,B,C,A和B中元素均随机生成,数组A范畴是1~20,数组B范畴是100~200,数组C是A和B相加得到。请编程生成并输出A,B,C。 Private Sub Command1_Click()     Dim a(3, 3), b(3, 3), c(3, 3), t%, m%     For i = 0 To 3       For j = 0 To 3       a(i, j) = Int(Rnd * 20 + 1)       Picture1.Print a(i, j);       Next j     Next i     Picture1.Print      For i = 0 To 3       For j = 0 To 3       b(i, j) = Int(Rnd * 101 + 100)       Picture1.Print b(i, j);       Next j     Next i     Picture1.Print      For i = 0 To 3       For j = 0 To 3       c(i, j) = a(i, j) + b(i, j)        Next j     Next i End Sub 26、运用随机函数生成一种4×4矩阵(即二维矩阵),范畴是[20,50]内整数,求它两条对角线上元素之和。 Private Sub Form_Click() Dim a%(3, 3) For i = 0 To 3  For j = 0 To 3 a(i, j) = Int(Rnd * 31 + 20) Print Tab(j * 5); a(i, j); Next j Next i s = a(1, 1) + a(2, 2) + a(3, 3) + a(0, 0) + a(0, 3) + a(1, 2) + a(2, 1) + a(3, 0) Print Print "两对角线上元素之和为:"; s End Sub 27、运用随机函数生成一种4×4矩阵(即二维矩阵),范畴是[40,80]内整数,求它最小值及所相应下标。 Private Sub Form_Click() Dim a%(3, 3) Min = 80 For i = 0 To 3  For j = 0 To 3 a(i, j) = Int(Rnd * 41 + 40) Print Tab(j * 5); a(i, j);
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服