计算机考试二级VB常用算法(2):排序

文章作者 100test 发表时间 2007:03:10 18:32:56
来源 100Test.Com百考试题网


1、算法说明

在若干数中求最大值,一般先取第一个数为最大值的初值(即假设第一个数为最大值),然后,在循环体内将每一个数与最大值比较,若该数大于最大值,将该数替换为最大值,直到循环结束。

求最小值的方法类同。

求若干数平均值,实质上就是先求和,再除以这些数的个数。

应用举例

随机产生n1100(包括1100)的数,求它们的最大值、最小值和平均值。

Private Sub Command1_Click()

Dim n As Integer, i As Integer, min As Integer, max As Integer, aver As Single, s As Integer

n = Val(InputBox("输入个数:"))

s = Int(Rnd * 100) 1

max = s

min = s

aver = s

Print "1个数是:" &. s

For i = 2 To n

s = Int(Rnd * 100) 1

Print "" &. i &. "个数是:" &. s

If s > max Then max = s

If s < min Then min = s

aver = aver s

Next i

aver = aver / n

Print "max=". max. "min=". min. "aver=". aver

End Sub

解题技巧

最大值、最小值、平均值类型题目往往和数组放在一起考!有的不仅求这些值,还要对具有最大值或者最小值的行或列或者某个元素进行处理,这时就要在记录最大、最小值时,同时记录该值所在的行号和列号。
2、实战练习
1) 补充代码(2000春二(9))
本程序的功能是在二维数组中查找鞍点元素,即该元素在所在行中为最大,且在所在列中为最小。在一个数组中可能存在,也可能不存在这样的元素。数组各元素的值从文件data.txt中读取。
Private Sub Form_Click()
Dim a(3,3) As Integer,i As Integer,j As Integer
Dim maxvr As Integer,col As Integer, As Integer
Open data.txt For Input As #1
For i=1 To 3
For j=1 To 3
Input #1,a(i,j)
Print a(i,j).
Next j
Print
Next i
For i=1 To 3
maxvr= (1)
col=1
For j=2 To 3
If maxvr
maxvr= (2)
col=j
End If
Next j
For j=1 To 3
If maxvr>a(j,col) Then (3)
Next j


相关文章


全国计算机等级考试二级Java模拟试题3答案
全国计算机等级考试二级Java模拟试题2答案
计算机考试二级VB常用算法(2):排序
计算机考试二级VB常用算法(5):排序
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛