sq" />
1 下面程序是接受用户从键盘上输入的一个正整数,找出大于或等于该数的第一个素数。
Option Explicit
Private Sub Command1_Click()
Dim n As Integer, k As Integer
Dim i As Integer
n = InputBox("请输入一个正整数")
k=n
Do
For i = 2 To Sqr(k)
If k Mod i = 0 Then Exit For
Next i
If i > sqr(k) Then
Exit Do
Else
k=k+1
End If
Loop
Print "大于等于"; n; "的第一个素数是"; k
2 以下程序的功能是随机产生20个1到100之间的正整数,去掉一个最大数和最小数,然后取其平均数。
Private Sub Form_Click()
Dim s As Integer, i As Integer
Dim k As Integer, max As Integer, min As Integer
Randomize
k = Int(Rnd * 100) + 1
max = k: min = k
s=k
For i = 1 To 19
k = Int(Rnd * 100) + 1
s = s + k
If k>max Then max = k
If k < min Then min = k
Next i
s = s-max-min
Print "average="; s / 18
3 随机生成10个整数,并放入一个一维数组中,然后将其前5个元素与后5个元素对换,即:第1个元素与第10个元素互换,第2个元素与第9个元素互换……分别输出数组原来各元素的值和对换后各元素的值。
Private Sub Command1_Click()
Dim a(10) As Integer
Dim i As Integer, j As Integer
Print "原序列:"
For i = 1 To 10
a(i) = Int(Rnd * 90) + 10
Print a(i);
Next i
For i = 1 To 5
t = a(i)
a(i)=a(11-i)
a(11-i)=t
Next i
Print "交换后的序列:"
For i = 1 To 10
Print a(i);
Next i
End Sub
End Sub
4 以下程序的功能是随机生成20个100到200之间的正整数,输出其最大元素和其所在的位置,请按要求完善程序。
Private Sub Command1_Click()
Dim a(20) As Integer, i As Integer
Dim max As Integer, maxi As Integer
Randomize
For i = 1 To 20
a(i) = int(rnd*101)+100
Print a(i);
Next i
max=a(1)
maxi = 1
For i = 2 To 20
If a(i) > max Then
max = a(i)
maxi=i
End If
Next
Print "最大元素为"; max; "其所在的数组元素位置号为"; maxi
End Sub
5 在文本框Text1中输入一串字符,判别其是否是回文字符串。所谓回文字符串是指正读和反读都一样的字符串,比如ABBA、DEAED等就是回文字符串。
Private Sub Command1_Click()
Dim s As String, n As Integer, m As Integer