1、VB上机考试习题以及答案VB上机考试1、 利用随机函数产生25个100到999之间的整数,构成5 5的矩阵,输出该矩 阵。Dim a(1 To 5, 1 To 5)Private Sub Form_Click()Ran domizeFor i = 1 To 5Forj = 1 To 5a(i, j) = Int(Rnd * (999 - 100 + 1) + 100)Print a(i, j);Next jPrintNext iEnd Sub2、 利用随机函数产生25个10到99之间的整数,求其平均值(要求保留3位小 数,第 4 位四舍五入)。Private Sub Form_Click()F
2、or i = 1 To 25a = In t(R nd * (99 - 10 + 1) + 10)Print a;s = s + aNext iPrintAvg = s / 25Print AvgEnd Sub3、 在窗体上按下鼠标的右键,记录其坐标。| 420 2820Private Sub Form_Load()Label1.BorderStyle = 1Label1.Alig nment = 2End SubPrivate Sub Form_MouseDow n(Button As In teger, Shift As In teger, X AsSi ngle, Y As Si ngl
3、e)If Butt on = 2 The nLabel1.C apti on = X & , & YEnd IfEnd Sub4、利用随机函数产生25个10到99之间的整数,按从小到大的顺序显示。Dim a(1To 25)Private Sub Form_Click()CisFor i = 1 To 25a(i) = In t(R nd * (99 -10 + 1) + 10)Print a(i);Next iPrintFor i = 1 To 25 - 1For j = 1 To 25 - iIf a(j) a(j + 1) The n tmp = a(j): a(j) = a(j + 1)
4、: a(j + 1) = tmpNext jNext iFor i = 1 To 25Print a(i);Next iEnd Sub5、利用随机函数产生50个1,6 之间的整数,分别统计出1的个数,2的个数,3的个数,4的个数,5的个数和6的个数。Dim a(1 To 6)Private Sub Form_Click()For i = 1 To 6a(i) = 0Next iFor j = 1 To 50x = In t(R nd * (6 - 1 + 1) + 1)a(x) = a(x) + 1Next jFor i = 1 To 6Print i & 出现了 & a(i); 次Next
5、iEnd Sub &在文本框中输入一些英语单词,统计空格的个数丄|口収|Vi sual Basic compuitei pro c tie I单词的个数Kb 6 |统计Dim n%, x As String, s%Private Sub Form_Click() n = Le n(Text1.Text) x = Text1.TextFor i = 1 To nIf Mid(x, i, 1) = The n s = s + 1Next iPrint 共出现了 & s & 个空格 End Sub 7、编程计算下列公式的值,其中n (10)为从键盘输入的正整数。S=1!+3!+5!+ +(2* n-
6、1)! Private Sub Form_Click()n = Val(lnputBox( 请输入一个不大于10的整数)s = 0For i = 1 To 2 * n - 1 Step 2p = 1Forj = 1 ToiP = P * jNext js = s + pNext iPrint sEnd Sub 8、编程计算下列公式的值,其中n ( max The n max = a(i): loc = iNext iPrint 最大的数是;maxPrint 在数组中是第;loc; 个数End Sub14、 利用随机函数产生并显示10个4位数的正整数,找出其中的最小数ExplicitDim i%
7、, mi n%, loc%Dim a(1 To 10) As In tegerOptionOptionPrivate Sub Form_Click()Ran domizeForml.CIsFor i = 1 To 10a(i) = In t(R nd * (9999 - 1000 + 1) + 1000)Print a(i)Next imin = 9999For i = 1 To 10If a(i) min Then min = a(i): loc = iNext iPrint 最小的数是;minPrint 在数组中是第;loc; 个数End Sub15、当按下鼠标左键时,窗体的背景色变为红色
8、;松开鼠标左键时,窗体的背景 色变为绿色。Private Sub Form_MouseDown(Button As Integer, Shift AsIn teger, X As Si ngle, Y As Si ngle)If Button = 1 Then Form1.BackColor = vbRedShift As Integer, X As Single.End SubPrivate Sub Form_MouseUp(ButtonAs Integer, Y As Si ngle)If Button = 1 The n Form1.BackColor = vbGreen End Sub
9、16、编制一个时钟程序,如下图Private Sub Form_Load() Label1.BackColor = vbWhite Label1.BorderStyle = 1 Label1.Alig nment = 2Timer1.E nabled = True Timer1.I nterval = 1000End SubPrivate Sub Timer1_Timer()Label1.Capti on = TimeEnd SubOption17、从键盘输入10个数,按输入的顺序和按输入顺序相反的顺序输出ExplicitDim i%Dim a(1 To 10) As Si nglePriva
10、te Sub Form_Click()For i = 1 To 10a(i) = Val(InputBox( 请输入第& i & 个数)Print a(i);Next iPrintFor i = 10 To 1 Step -1Print a(i);Next iEnd SubOptio n ExplicitDim r%, a As Sin gleCon st pi As Si ngle = 3.14159Private Sub Form_Click()r = Val(InputBox( 请输入圆半径& vbCrLf & ( 1-9):,输入,5)a = pi * r A 2Print 半径为;r
11、; 的圆面积为;aEnd Sub19、编写一个时钟程序,当选择“ 24小时”时,以24小时的方式显示如A,当 选择“12小时”时,以12小时的方式显示如BoTimerl.l nterval = 1000End SubPrivate Sub Timer1_Timer()Select Case TrueCase Optio n1.ValueLabel1.Capti on = TimeCase Opti on 2.ValueLabel1.C apti on = Format(Time, HH:MM:SS AM/PM)End SelectEnd Sub20、设计一个程序,用户界面如图所示。程序运行后,
12、用户在文本框中输入一段 文字,然后按需要单击选择框,用以改变文本的字体、字型、颜色以及大小。Opti on ExplicitPrivate Sub Check1_Click()If Check1.Value = 1 The nText1.FontName =黑体”ElseText1.FontName =宋体”End IfEnd SubPrivate Sub Check2_Click()If Check2.Value = 1 The nText1.Fo ntUn derli ne = TrueElseText1.Fo ntUn derli ne = FalseEnd IfEnd SubPriva
13、te Sub Check3_Click()If Check3.Value = 1 The nText1.Fo ntSize = 20ElseTextl.Fo ntSize = 9End IfEnd SubPrivate Sub Check4_Click()If Check4.Value = 1 The nText1.ForeColor = vbGree nElseText1.ForeColor = vbBlackEnd IfEnd SubPrivate Sub Comma nd1_Click()Text1.Text =End SubPrivate Sub Comma nd2_Click()En
14、dEnd Sub20做出2个周期的正弦波形.Private Sub Form_Click()Dim i%, x#, y#Con st pi As Stri ng = 3.1415926Forml.Scale (-2 * pi, 1.2)-(2 * pi, -1.2)Forml.Li ne (-2 * pi, 0)-(2 * pi, 0)Form1.Li ne (0, 1.2)-(0, -1.2)For x = -2 * pi To 2 * pi Step 0.01y = Si n(x)Form1.PSet (x, y)Next xEnd Sub21以窗体为中心,产生1000个半径颜色随机的同心
15、圆.Private Sub Form_Click()For i = 1 To 1000x = Form1.ScaleWidth / 2y = Form1.ScaleHeight / 2r = Int(Rnd * y)c = RGB(255 * Rnd, 255 * Rnd, 255 * Rnd)Form1.Circle (x, y), r, cNextEnd Sub22.九九乘法表Private Sub Form_Click()Dim i%, j%Forml.Caption =九九乘法表Print Tab(48); C apti onPrint Tab(48); Fori = 1 To 9Fo
16、rj = 1 To iPrint Tab(j - 1) * 12 + 1); i; *; j; =; i * j;Next jPrintNext iEnd Sub23求最大公约数和最小公倍数Private Sub Comma nd2_Click()Text1.Text =End SubPrivate Sub comma nd1_Click()Dim m%, n%, r%, t%m = Val(Text1.Text)n = Val(Text2.Text)If m n The n t = m: m = n: n = tt = m * nDor = m Mod nLoop Until r = 0Text3.Caption =公约数:& mText4.Caption =公倍数& t / mEnd Sub,最小值及所24.用随机函数产生50个两位数,保存于一个一维数组中,要求找出其中的最大值 在位置.