医学计算机应用基础第五六七,医学计算机应用基础:11、第五章 程序设计基础(3)数组...

《医学计算机应用基础:11、第五章 程序设计基础(3)数组》由会员分享,可在线阅读,更多相关《医学计算机应用基础:11、第五章 程序设计基础(3)数组(22页珍藏版)》请在人人文库网上搜索。

1、1 5.1.3 5.1.3 程序语句的组成基元程序语句的组成基元 3 3、数组、数组 2 例例1:1:求求100100个学生的平均成绩?然后统计高于平均分的人数个学生的平均成绩?然后统计高于平均分的人数? ? aver=0:Mark=0 For i=1 to 100 Mark=inputBox(“输入第输入第” +i+ “位学生成绩位学生成绩”) aver=aver+mark Next i aver=aver/100 可以用数组来表示这可以用数组来表示这100个数据类型相同的变量个数据类型相同的变量 例如:例如:t(0), t(1), t(2), t(98), t(99) t(k) (k=0,。

2、1,2,99)为数组元素为数组元素(或称下标变量或称下标变量),它表,它表 示第示第k个学生的成绩个学生的成绩, k称为下标变量的下标称为下标变量的下标(下标从下标从0开始开始) 3 w 一组同类元素按一定顺序排列而成的结构一组同类元素按一定顺序排列而成的结构 类型数据类型数据。 w 在程序中使用数组即用一个数组名代表逻在程序中使用数组即用一个数组名代表逻 辑上相关的一批数据辑上相关的一批数据,用下标表示该数组中用下标表示该数组中 的各个元素的各个元素,使程序书写简洁使程序书写简洁 4 w 格式格式: Dim 数组名数组名(下标下标1 ,下标下标2) As 类型类型 n下标下标:定义数组的维数。

3、和元素个数。一个下标定义数组的维数和元素个数。一个下标 表示一维数组;多个下标,表示多维数组表示一维数组;多个下标,表示多维数组 n每一维大小每一维大小:下标下标+1 n数组的大小为每一维大小的乘积数组的大小为每一维大小的乘积 例例:Dim A(10) as integer A(0) A(1)A(2) A(9)A(10) 5 Dim Larry(1,2) as long 例:例:Dim st (5) as string Dim larry (3, 4) as long Larry(0,0)Larry(0,1)Larry(0,2) Larry(1,0)Larry(1,1)Larry(1,2) 第。

4、第0行行 第第1行行 第第2列列第第1列列第第0列列 6 注意:注意: w 下标必须为常数,不可以为表达式或变量下标必须为常数,不可以为表达式或变量 例:以下声明是错误的例:以下声明是错误的 n=10 Dim x(n) As Single w 在同一个过程中在同一个过程中,数组名不能与变量名同名数组名不能与变量名同名,否则会出错否则会出错 Private Sub Form1_Click() dim a(5) as integer dim a as integer 错误错误 a=8 a(2) = 10 End Sub 7 3.数组的基本操作数组的基本操作 w 赋值赋值 Dim P(5) as i。

5、nteger 声明了声明了P数组数组,有有6个元素个元素 P(1)=10 对对P(1)这个数组元素赋值这个数组元素赋值 利用循环结构赋值利用循环结构赋值 Dim a(10) As Integer, i As Integer, y As String For i = 0 To 10 a(i) = 1 y = y & a(i) & Next i MessageBox.Show(y) 8 w 复制(或传递)复制(或传递) Dim A(6), B(10), C(2,2) A(2)=B(8) C(1,2)=A(3) 9 w 二维数组的赋值二维数组的赋值 Dim a(2,2) As Integer Dim。

6、 i as integer, j as integer, y As String For i = 0 To 2 For j = 0 To 2 a(i, j) = InputBox(请输入数据请输入数据) Next Next 10 输出显示输出显示 y = For i = 0 To 2 For j = 0 To 2 y = y & a(i, j) & Next y = y & Chr(10) Next MsgBox(y) (实验实验31/4):根据:根据20人组的销售收入业绩编写一人组的销售收入业绩编写一 个统计程序个统计程序,要求统计销售金额在要求统计销售金额在50万元以上的业万元以上的业 务。

7、员人数和在务员人数和在10万元以下的业务员人数万元以下的业务员人数 Dim A(20) As Integer Dim s1 As Integer, s2 As Integer Dim i As Integer s1=0 s2=0 Randomize() For i = 1 To 20 A(i) = Int(Rnd() * 100) 利用随机函数为每人利用随机函数为每人 的销售业绩赋值的销售业绩赋值 Next i 根据销售业绩分组根据销售业绩分组,并统计每个组的人数并统计每个组的人数 For i = 1 To 20 If A(i) = 50 Then s1 = s1 + 1 ElseIf A(i。

8、) aver then oven=oven+1 Next i MsgBox (aver & “,” & oven) 实验实验31/6:用随机函数和取整函数生成一个用随机函数和取整函数生成一个8 位数的整数,判断位数的整数,判断0-9这这10个数字在生成的个数字在生成的8 位数的整数中出现的次数,并显示判断结果。位数的整数中出现的次数,并显示判断结果。 14 Dim a As Integer Dim b(9) As Integer Dim s As Integer Dim u As String Dim i As Integer Randomize() a = Int(Rnd() * 90000。

9、000 + 10000000) For i = 0 To 7 s = Mid(a, i + 1, 1) b(s) = b(s) + 1 Next u = 8位数为:位数为:( & a & ) & vbCrLf For i = 0 To 9 u = u & i & 出现次数:出现次数: & b(i) & vbCrLf Next MsgBox(u) w 实验实验31/5: 利用上题产生的数组和数据,利用上题产生的数组和数据, 编写对编写对20个业务员的销售金额按从高到低个业务员的销售金额按从高到低 的顺序排序,并显示排序后的结果。的顺序排序,并显示排序后的结果。 16 冒泡排序冒泡排序 w 实施冒。

10、泡排序时,要对实施冒泡排序时,要对n n个记录的关键字个记录的关键字 序列进行序列进行n n1 1次扫描。每次扫描时,都从次扫描。每次扫描时,都从 下到上对相邻的两个关键字进行比较,如下到上对相邻的两个关键字进行比较,如 果不符合由小到大果不符合由小到大( (或大到小或大到小) )的顺序,就的顺序,就 将它们交换位置。将它们交换位置。 17 18 Dim a(19) As Integer Dim i As Integer Dim j As Integer Dim t As Integer Dim x As String Dim y As String x = y = For i = 0 To 。

11、19 a(i) = Int(Rnd() * 100) x = x & a(i) & , Next For i = 0 To 18 For j = 19 To i + 1 Step -1 If a(j) a(j - 1) Then t = a(j) a(j) = a(j - 1) a(j - 1) = t End If Next Next For i = 0 To 19 y = y & a(i) & , Next MsgBox(x & vbCrLf & y) 19 选择排序选择排序 w 选择排序法是一个很简单的算法。其原理选择排序法是一个很简单的算法。其原理 是首先找到数据清单中的最小的数据,然是首先找到数据清单中的最小的数据,然 后将这个数据同第一个数据交换位置;接后将这个数据同第一个数据交换位置;接 下来找第二小的数据,再将其同第二个数下来找第二小的数据,再将其同第二个数 据交换位置,以此类推。据交换位置,以此类推。 20 21 w 实验实验31 循环结构程序设计循环结构程序设计。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值