电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

Visual Basic程序设计与实训 教学课件 ppt 作者 苏玉雄 电子教案 第6章

49页
  • 卖家[上传人]:E****
  • 文档编号:89183983
  • 上传时间:2019-05-20
  • 文档格式:PPT
  • 文档大小:1.57MB
  • / 49 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、第 6 章 数 组,本章学习目标,6.1 静态数组,数组是由具有相同名称和相同数组类型的元素组成的有序集合。每个数组需要用一个名称表示数组名,数组中的每一个元素具有唯一索引号(即下标号),可以用数组名及下标号唯一的识别一个数组元素。 在Visual Basic6.0中,使用数组要注意的事项如下: 1、在Visual Basic6.0中,数组元素a(5)中的a为数组名,5是下标。 2、如果只用一个下标就能确定一个数组元素在数组的位置,则称为一维数组。 3、数组必须遵循先声明后使用的原则,声明一个数组就是声明其数组名、类型、维数和数组的大小。 4、在Visual Basic6.0中,数组的数据类型其实就是数组元素的数据类型。,6.1.1 静态数组的定义,声明静态数组:其语法格式为: (下界to上界) As 功能:声明了一个一维数组,并分配了相应的存储空间。 说明: 1、在数组名后用一个括号括起来的确定的上界、下界:下界to上界 上界是必选项,下界to是可选项,可以省略。 2、所定义的数组元素的个数是:上界-下界+1 例如:Dim c(2 To 8)As Integer 定义了8-2+1=7

      2、个元素 3、数组的声明语句不仅定义数组,为数组分配存储空间,而且还能对数组进行初始化,使得数值型数组元素初始值为0,字符型数组的元素初始值为空等。 4、数组元素相当于变量,它的使用和变量相同,可以进行读写操作。,6.1.2 静态数组的基本操作,1、数组的初始化 静态数组的各个元素赋值,可以用赋值语句(=)、输入框函数(inputbox()、文本框输入等方法。 2、数组元素的输入 由于数组元素的下标是可以变化的,将下标作为循环变量,就可利用for循环语句来给数组元素赋初值。 例如:利用键盘输入5科分数。 Dim Score(4) As Single For i=0 to 4 Score(i)=val(inputbox(“请输入各科分数”) Next i 3、数组元素的输出 For i=0 to 4 Print Score(i); Next i,案例6-1,案例6-1:将下列字符存放到数组中,并以字符倒序打印出来。原字符是: a, b, c, d, e, f, g, h, I, j,【案例说明】:本案例实现10个有序字符按逆序打印出来,可采用FORM_CLICK()事件。 【案例分析】:当

      3、前有10个字符,我们可以定义一个数组a(9),可以看到该数组共10个存储单元。分别将这10格字符存入数组中,然后逆序将其打印输出即可。将数据存入数组中只能依次为每个数组元素赋值。,案例6-1,【程序代码】: Private Sub Form_Click() Dim i As Integer Dim a(9) As String 对数组中各元素进行赋值。 a(0) = “a“: a(1) = “b“: a(2) = “c“: a(3) = “d“: a(4) = “e“ a(5) = “f“: a(6) = “g“: a(7) = “h“: a(8) = “i“: a(9) = “j“ Print “原字符顺序:“ 打印输出原字符序列 For i = 0 To 9 Print a(i); Next i Print Print “字符倒序:“ 倒序输出字符序列 For i = 9 To 0 Step -1 Print a(i); Next i End Sub,案例6-2,案例6-2:用随机函数模拟掷色子(各侧面上有1到6个点),编程统计掷600次出现各点的次数。如图所示:,【案例分析】:掷

      4、色子所掷的点数有6种情况:1点、2点、3点、4点、5点、6点。由此可定义一个数组s用来存放掷色子所出现的点数的统计结果:s(1)表示出现1点的次数,s(2)表示出现2点的次数,依此类推。而随机产生的点数可以用随机函数Rnd来实现,每掷一次色子,所出现的点数n,则存放该点数n的数组s(n)的值自动加1。,案例6-2,【操作步骤】: 1、界面设计 新建一窗体Form1,打开代码窗口,找到FORM_CLICK事件. 2、程序代码 Private Sub Form_Click() Dim i,j,n as Integer Dim s(1 To 6) As Integer 数组s用来存放各点出现次数 For i = 1 To 600 随机产生各点数,并统计出现次数 n = Int(Rnd * 6) + 1 s(n) = s(n) + 1 Next i For j= 1 To 6 打印各点出现次数 Print i; “个点:“; s(j) Next i End Sub,课堂练习6-1,课堂练习6-1:输入一个学生五门学科的成绩,编程实现求他的平均分和总分。 【案例分析】:可使用inputbox函数

      5、输入学生的成绩,同时定义一个数组用来存放学生成绩。利用数组来求总分和平均分,并将其总分和平均分打印在屏幕上。 【操作步骤】: 1、界面设计: 新建一个窗体Form1,打开代码窗口,找到FORM_CLICK事件. 2、程序代码 Private Sub Form_Click() Dim Score(4) As Single 数组用来存放各科分数 Dim Sum, Average As Single 声明总分和平均分变量 For i = 0 To 4 Score(i) = Val(InputBox(“请输入各科分数“) 数组初始化 Sum = Sum + Score(i) Next i Average = Sum / 5 求平均分 Print “总分=“ & Sum 将总分输出屏幕 Print “平均分=“ & Average 将平均分输出屏幕 End Sub,课堂练习6-2,课堂练习6-2:随机生成20个1,100闭区间的整数存入一个数组中,统计其中大于50的整数,求这些整数的和并输出。 【案例分析】:通过随机函数可以产生20个符合条件的整数,然后通过对数组元素的查找,将大于50的整数累加

      6、到变量sum中,打印即可。 【操作步骤】: 1、程序代码: Private Sub Form_Click() Dim i, a(1 To 20), sum As Integer For i = 1 To 20 随机产生20个整数并存入数组a中 a(i) = Int(Rnd * 100) + 1 If a(i) 50 Then sum = sum + a(i) 如大于50则累加到sum中 Next i For i = 1 To 20 Print a(i); 打印出20个整数 If i Mod 10 = 0 Then Print 每10个数一行 Next i Print “sum=“ & sum 将和输出 End Sub,6.2 动态数组,在数组的使用中,有时候在程序设计阶段并不知道数组所需的大小,而无法声明正确的数组大小或者在某个过程中需要一个特别大的数组,如果在程序一开始,就声明一个大数组,则内存被长期占用,会降低系统效率。在这种情况下,就可以使用动态数组。,6.2.1 动态数组的定义,1、声明动态数组:动态数组的声明与静态数组的声明过程基本相同,但动态数组声明过程没有下标表。 格式如

      7、下: () As 功能:在格式中使用(),空括号就表示所声明的是动态数组。 2、动态数组的使用:要使用动态数组就必须先使用ReDim语句进行声明,语法格式为: ReDim Preserver () As 使用Preserver来增加数组大小,又不丢失数据 例如:ReDim a(2) ReDim Preserver a(6) 则原数组数据均可保留,且增加a(3)、a(4)、a(5)、a(6)四个数组元素。,6.2.2 动态数组的基本操作,1、动态数组的初始化 在静态数组中我们介绍了数组初始化的方法,对于动态数组也同样适用。 在Visual Basic中为用户提供了Array函数,该函数可以为动态数组在使用之前进行初始化。Array函数的格式如下: =Array() 2、动态数组的删除 经过定义的数组将长期占用内存空间,为了重新初始化静态数组的元素,或者释放动态数组的存储空间,可以使用Erase语句删除数组。其语法格式如下: Erase 其中是一个或多个逗号隔开的需要清除的数组变量名。 例如:Erase a 假如定义了动态数组a,那么执行“Erase a”后就会对数组a进行删除,释放内存空

      8、间。,案例6-3,案例6-3:随机产生10个两位整数,找出其中的最大值和最小值。如图所示:,【案例分析】:本案例单击窗体后将随机产生10个两位整数,并将最大值和最小值打印在屏幕上。利用Rnd函数随机产生10个两位整数,并将该个整数存放在预先定义好的数组中,然后寻找他们的最大值和最小值。,案例6-3,程序代码: Private Sub Form_Click() Dim a(10), max, min, i As Integer For i = 1 To 10 a(i) = Int(Rnd * 90) + 10 随机产生一个二位整数 Print a(i); Next I 给max、min置初值a(1) max = a(1) min = a(1) 循环找出数组a中的最大、最小元素 For i = 2 To 10 If a(i) max Then max = a(i) If a(i) min Then min = a(i) Next i Print Print “最大值=“ “最小值=“ & min End Sub,案例6-3,Private Sub Form_Click() Dim a(),

      9、 max, min, i, n As Integer n = Val(InputBox(“请输入随机产生两位整数的个数“) ReDim a(1 To n) 重定义数组a的大小 For i = 1 To n a(i) = Int(Rnd * 90) + 10 Print a(i); Next i max = a(1) min = a(1) For i = 2 To n If a(i) max Then max = a(i) If a(i) min Then min = a(i) Next i Print Print “最大值=“ “最小值=“ & min Erase a End Sub,以上程序所使用的是静态数组,假如随机产生的两位整数的个数由键盘输入,此时就要使用动态数组。,可以先输入个数,再定义合适的数组大小。程序代码如下:,案例6-4,案例6-4:在数组中随机生成n(n值由键盘输入)个1100整数,并将其进行倒置。即:第1个数与第n个数交换,第2个数与第n-1个数交换。分别输出数组交换前、后的结果。,【案例分析】:使用FORM_CLICK事件,单击窗体后将输入n个整数,然后将显示交换前后的结果。 n值可由inputbox函数中输入,然后输入n个整数,再声明动态数组用来存放这n个整数,并输出这n个整数。利用for循环实现交换,然后将交换后的结果输出来。,案例6-4,Private Sub Form_Click() Dim a(), i, n, temp As Integer n = Val(InputBox(“请输入n个随机产生的整数“) ReDim a(1 To n) 随机产生n个整数 For i = 1 To n a(i) = Int(Rnd * 100) + 1 Print a(i); Next I 将数组a元素前后交换 For i = 1 To n / 2 temp = a(i) a(i) = a(n + 1 -

      《Visual Basic程序设计与实训 教学课件 ppt 作者 苏玉雄 电子教案 第6章》由会员E****分享,可在线阅读,更多相关《Visual Basic程序设计与实训 教学课件 ppt 作者 苏玉雄 电子教案 第6章》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2 2022年小学体育教师学期工作总结 2022年家长会心得体会集合15篇
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.