- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
vb实验5
实验五 数组的练习
一、实验目的:
1、掌握数组的声明、赋值和使用方法;
2、掌握自定义数据类型的声明和使用方法。
二、实验内容:
要求:
1、定义一个数组,,包含职工工号、姓名、工资三项内容,职工总人数由键盘输入,工号、姓名、工资由文本框内容读入。
单击“添加”按钮,添加一个职工的信息显示在Picture1中,总人数不能超过由键盘输入的职工人数,否则弹出提示框,提示“人数已达要求,不需再次输入”。
单击“排序”按钮,将职工信息按工资递减的顺序排列,并输出到Picture2中显示。
提示:
1、由于所要表示的职工人数不定,所以需要定义一个动态数组。
2、所定义的动态数组可以是自定义类型。首先在通用声明段定义一个用户自定义数据类型,然后定义动态数组为该用户自定义类型。
3、按工资递减排列可使用冒泡法,参照课本例题。二、实验过程:
1、设计用户界面并设置属性:
打开VB软件,利用左边工具箱上的Label、Command、Text等控件图标,在中间的窗体上建立相应的控件对象,并进行相关属性的设置:
(1)Label1: 在窗体上建立一个新的Label1的标签控件。属性“Caption”里面设置为“工号”,“Font”里面设置为“宋体,粗体,四号”;
(2)Label2: 在窗体上建立一个新的Label2的标签控件。属性“Caption”里面设置为“姓名”,“Font”里面设置为“宋体,粗体,四号”;
(3)Label3:在窗体上建立一个新的Label3的标签控件。属性“Caption”里面设置为“工资”,“Font”里面设置为“宋体,粗体,四号”。
(4)Text1:在窗体上建立一个新的Text1的文本控件。属性“Text”里面设置为无;
(5)Text2:在窗体上建立一个新的Text2的文本控件。属性“Text”里面设置为无;
(6)Text3:在窗体上建立一个新的Text3的文本控件。属性“Text”里面设置为无;
(7)Label4: 在窗体上建立一个新的Label4的标签控件。属性“Caption”里面设置为“员工数据列表”,“Font”里面设置为“宋体,粗体,四号”;
(8)Label5: 在窗体上建立一个新的Label5的标签控件。属性“Caption”里面设置为“工资递减排列”,“Font”里面设置为“宋体,粗体,四号”;
???9)Picture1:在窗体上建立一个新的Picture1的图片框。
(10)Picture2:在窗体上建立一个新的Picture2的图片框。
(11)Command1:在窗体上建立一个新的Command1的命令按钮控件。“Caption”里面设置为“添加”,“Font”里面设置为“宋体,粗体,四号”。
(12)Command2:在窗体上建立一个新的Command2的命令按钮控件。“Caption”里面设置为“排序”,“Font”里面设置为“宋体,粗体,四号”。
三、代码编写:
Option Base 1
Private Type worker
num As Integer
name As String
gongzi As Integer
End Type
Dim a() As worker
Dim n As Integer, i As Integer
Private Sub Command1_Click()
If i n Then
MsgBox (输入人数超出限定)
Text1 =
Text2 =
Text3 =
Exit Sub
End If
a(i).num = Val(Text1)
a(i).name = Text2
a(i).gongzi = Val(Text3)
Picture1.Print a(i).num Space(2) a(i).name Space(2) a(i).gongzi
i = i + 1
Text1 =
Text2 =
Text3 =
End Sub
Private Sub Command2_Click()
Dim t As worker
For j = 1 To n-1
For k = 1 To n - j
If a(k).gongzi a(k + 1).gongzi Then
t = a(k)
a(k) = a(k + 1)
a(k + 1) = t
End If
Next k
Next j
For j = 1 To n
Picture2.Print a(j).num Space(2) a(j).name Space(2) a(j)
您可能关注的文档
- dreamweaver实训报告(留言板个人网站).doc
- F003专业基础综合.doc
- fpga-数码显示-实验报告.doc
- FLASH试卷(答案).doc
- flash复习资料试题答案.doc
- fluent问题问答.doc
- GB17167附表.doc
- FSAE转向系设计开题报告.doc
- GM8804C-4减量法定量包装控制器.doc
- GrammarInfinitive动词不定式.docx
- 北师大版小学数学三年级上册《寄书》教学设计.docx
- 统编版(部编版)语文二年级上册《雪孩子》教学设计.docx
- 统编版(部编版)语文二年级上册《八角楼上》教学设计.docx
- 北师大版小学数学三年级上册《长方形周长》教学设计.docx
- 北师大版小学数学三年级上册《丰收了》教学设计.docx
- 统编版(部编版)语文二年级上册《夜宿山寺》教学设计.docx
- 统编版(部编版)语文二年级上册《风娃娃》教学设计.docx
- 统编版(部编版)语文二年级上册《朱德的扁担》教学设计.docx
- 统编版(部编版)语文二年级上册《难忘的泼水节》教学设计.docx
- 统编版(部编版)语文二年级上册《纸船和风筝》教学设计.docx
文档评论(0)