资源简介 (共20张PPT)程序设计的核心——数组目 录1考试要求3学习难点5作业讲解7课后巩固2学习重点4作业讲解6课堂练习1.数组 (c)考试要求1.掌握数组的定义。2.理解数组的含义。3.尝试用数组来解决问题学习重点1.数组的含义。2.用数组来解决问题学习难点目录01作业讲解作业讲解3.VB程序如下a(1)=5: a(2)=9: a(3)=-1: a(4)=12: a(5)=11: a(6)=-7: a(7)=2: a(8)=22k = a(1)For i = 2 To 8If a(i) < k Then k = a(i)Next iText1.Text = Str(k)程序运行后文本框 Text1 显示_________。-7作业讲解4. 有 8 个数据:46、78、12、55、17、9、33、80 依次存放在数组 d(1)到 d(8)中,k=1,程序段如下所示:For i=2 To 8If d(i) > a(k) Then k = iNext iText2.Text=Str(k)程序运行时,文本框 Text2 显示的是____________。8作业讲解5. 有如下 VB 程序段Dim a(0 To 10) As Integern = 10For i = 0 To n / 2a(i) = 2 * i + 1Next iFor i = n To 6 Step -1a(i) = a(n - i)Next iText1.Text = Str(a(n - 3))n 的值为 10,程序执行后,Text1 中显示的内容是_____________。7a(0) a(1) a(2) a(3) a(4) a(5) a(6) a(7) a(8) a(9) a(10)351179975311作业讲解有 VB 编写的程序如下:Dim a(0 To 9) As Integer,t as Longt = Val(Text1.Text)Do While t <> 0a(t Mod 10) = 1t = t \ 10LoopFor i = 0 To 9x = x + a(i)Next iText1中输入10242048则程序执行后x的值为___________。5a(0) a(1) a(2) a(3) a(4) a(5) a(6) a(7) a(8) a(9)1100100101111目录02课堂练习课堂练习k = a(2) - a(1)For i = 3 To 10If a(i) - a(i - 1) > k Thenk = a(i) - a(i - 1)EndIfNext ia(1) a(2) a(3) a(4) a(5) a(6) a(7) a(8) a(9) a(10)5 9 -1 12 11 32 -7 2 22 31.程序运行后k的值是___________。2.程序的功能是什么?数组相邻元素差值的最大值ki1342143568791011课堂练习k = a(2) - a(1)For i = 3 To 10If a(i) - a(i - 1) > k Thenk = a(i) - a(i - 1)EndIfNext ia(1) a(2) a(3) a(4) a(5) a(6) a(7) a(8) a(9) a(10)5 9 -1 12 11 32 -7 2 22 3求哪两个元素间的差值最大?k = 2For i = 3 To 10If a(i) - a(i - 1) > a(k) - a(k - 1) Thenk = iEndIfNext i课堂练习某地1900-1999年的平均降水量数据保存在数据库中。现要求找出相邻两年平均降水量变化(即本年度与上年度“年平均降水量”差值的绝对值)最大的年份区间。小吴为此编写了VB程序,程序运行时,单击按钮Command1后,在文本框Text1中输出运行结果。实现上述功能的VB代码如下,请在划线处填写合适代码:课堂练习某地1900-1999年的平均降水量数据保存在数据库中。现要求找出相邻两年平均降水量变化(即本年度与上年度“年平均降水量”差值的绝对值)最大的年份区间。小吴为此编写了VB程序,程序运行时,单击按钮Command1后,在文本框Text1中输出运行结果。实现上述功能的VB代码如下,请在划线处填写合适代码:Dim w(1 To 100) As Single'依次存储1900-1999年的年平均降水量数据Const n = 100Private Sub Command1_Click()Dim i As Integer, imax As Integerimax= ①For i = ② To nif abs(w(i)-w(i-1))>= ③ thenimax=iEndifNext itext1.Text = "年均降水变化最大的年份是" + ④ + "-" + ⑤End Sub23abs(w(imax)-w(imax-1))Str(1900+imax-2)Str(1900+imax-1)课堂练习tmp=1 : ans=0For i = 2 To 6If a(i) > a(i - 1) Then tmp=tmp+1 Else tmp=1If tmp > ans Then ans=tmpNext ia(1) a(2) a(3) a(4) a(5) a(6)2 1 3 7 5 8数组最长连续上升子序列1.程序运行后ans的值是___________。2.程序的功能是什么?课堂练习a(1) a(2) a(3) a(4) a(5) a(6) a(7) a(8) a(9) a(10)56 67 89 28 66 11 86 65 18 10编程统计峰值的个数,并在列表框中显示这些峰值。课堂练习a(1) a(2) a(3) a(4) a(5) a(6) a(7) a(8) a(9) a(10)56 67 89 28 66 11 86 65 18 10c=0ForIf Thenc=c+1list1.additemEndifNext i统计峰值的个数,并在列表框中显示这些峰值。a(i) > a(i - 1) and a(i)i = 2 To 9str(a(i))课堂练习a(1) a(2) a(3) a(4) a(5) a(6) a(7) a(8) a(9) a(10)2 5 6 9 11 20 21思考:在一个有序的数组中,插入一个新数据x(比如x=10)后。数组依然有序,编程解决这个问题。谢谢.! 展开更多...... 收起↑ 资源预览