欢迎来到天天文库
浏览记录
ID:15599253
大小:218.00 KB
页数:6页
时间:2018-08-04
《数组和自定义类型》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、数组和自定义类型一、实验目的 1.掌握数组的声明、数组元素的引用。 2.掌握固定长度数组和动态数组的使用差别。 3.掌握数组常用的操作和常用算法。 4.掌握列表框和组合框的使用。 5.掌握自定义类型及数组的使用。 二、实验内容1、随机产生30~100(包括30,100)的10个正整数,求最大值、最小值、平均值,并显示整个数组的值和结果,如图E.1所示。图E.1: 实验E.1运行界面2、已知6个学生的成绩,通过对数组赋初值的方法,利用String函数,以每5分为一个“”显示,并显示学生的成绩,如图E.2所示。图E.2: 实验E.2运行界面 3、随机产生20个学生的成绩,统计各分
2、数段人数。即0~59、60~69、70~79、80~89、90~100,并显示结果。产生的数据在Picture1显示,统计结果在Picture2显示,如图E.3所示。图E.3: 实验E.3运行界面 提示: ①本程序有两个事件过程,都要用到存放20个学生的数组,因此在通用声明段声明一个数组,例,Dimmark%(19);在Command2事件过程中声明一个数组s(9),分别存放分数段的人数。 ②统计时的关键在于确定每个人的分数mark(i)与数组s下标之间的关系,即: Fori=0to19 k=mark(i)10 SelectCasek
3、 Case0To5'0~59分不及格的人数 s(5)=s(5)+1 Case9To10'90~100分的人数 s(9)=s(9)+1 Case6To8'存放其他三个分数段的数组元素的下标有规律,根据k获得 s(k)=s(k)+1 EndSelect Nexti 4、随机产生10个2位数,按从大到小递减的顺序排列,并显示排序结果。5、参照教材例5.3,在通用声明段声明两个数组,利用随机函数形成如下两个数组: 要求: ①以下三角
4、形式显示A数组、上三角形式显示B数组。 ②求A数组主对角线元素之和和B数组副对角线元素之和。 图E.4: 实验E.5运行界面6、输入整数n,显示出具有n行的杨辉三角形。图E.5显示n=8的效果。提示: ①定义一个二维数组(若用定长数组实现,则数组大一些;若用动态数组,则数组大小用ReDim命令重新定义)。 ②对下三角各元素进行设置:第一列及对角线上均为1,其余每一个元素正好等于它上面一行的同一列和前一列的两个元素之和。即a(i,j)=a(i-1,j-1)+a(i-1,j)。 ③利用TAB函数确定每列的宽度,使得列对齐。 图E.5: 实验E.6杨辉三角形运行界面7、设计一个选课的
5、运行界面如图E.6所示。它包含2个列表框,左边为已开设的课程名称,通过Form1_Load时间加入,并按拼音字母排序;当单击某课程名称后,将该课程加入到右边列表框,并在左边列表框中删除该课程。当右边课程已满5门时,不允许再加入,出现如图E.7所示的界面。 图E.6: 实验E.7运行界面图E.7: 超过5门课程的显示8、窗体上建立一个简单组合框,在组合框的文本框输入数字字符,按回车键后加入到组合框的列表框内,如图E.8所示;单击“交换”按钮,将列表框中最小值项目和第0个项目交换;最大值与最后项目交换,如图E.9所示。 图E.8: 输入数字数据图E.9: 交换后结果提示: ①只能输入数
6、字,Combo1_KeyPress事件通过如下代码实现: SelectCaseKeyAscii Case48to57,13'0~9数字和回车键为合法数据 CaseElse'否则为非法数据,去除非法字符 KeyAscii=0 EndSelect ②求最大值和最小值必须声明4个变量:如Min、iMin、Max、iMax分别存放最小值、最小值下标、最大值和最大值下标,并将列表框中低0个项目作为上述4个变量的初值。 ③按照求最大值和最小值的方法
7、,在组合框中找最小值和最大值,并获得最小值和最大值下标;注意比较时要用Val函数,否则作为字符串比较。 ④将组合框的第0项与最小值交换、最大值与最后项交换。例,最大值与最后项交换的代码如下: t=Combo1.List(Combo1.ListCount-1) Combo1.List(Combo1.ListCount-1)=Combo1.List(iMax) Combo1.List(iMax)=
此文档下载收益归作者所有