上海立信会计学院本科实验报告
班级: 学号: 姓名: 指导教师: 系部: 专业: 实验时间:
实验5 数组
一、 实验目的
1. 掌握数组的声明、数组元素的引用
2. 掌握固定长度数组和动态数组的使用差别
二、实验要求
1. 在C:\下建立子文件夹“VB实验5”,按照题目要求,在该文件夹下为各题保存相应的文件,如本实验中的第一题,需保存的文件有:工程文件(51.vbp)、窗体文件(51.frm) 及可执行文件(51.exe),本实验中的第二题,需保存的文件有:工程文件(52.vbp)、窗体文件(52.frm) 及可执行文件(52.exe),其余实验依此类推。
2. 撰写实验过程中出现了哪些问题、错误,你是如何解决的,做一个小结。
三、 实验内容:
1. 随机产生30~100(包括30、100)的10个正整数,存放于数组中,显示该数组的值,并求出最大值、最小值和平均值,如图5-1所示。要求:窗体显示字体默认、大小为小三,通过单击窗体触发程序运行。
图5-1
Private Sub Form_Click()
Dim a(9) As Integer, max%, min%, ave!
Randomize
max = 30: min = 100: ave = 0
For i = 0 To 9
a(i) = Int(Rnd * 71 + 30)
Print a(i);
ave = ave + a(i)
If a(i) > max Then max = a(i)
If a(i) < min Then min = a(i)
Next i
ave = ave / 10
Print "Max="; max, "Min="; min, "Ave="; Format(ave, "0.0")
End Sub
2. 已知6个学生的成绩,通过Array函数对数组赋初值,利用String函数,以每5分用一
个“◆”符号显示,随后显示学生的成绩。要求:窗体中所有控件字体默认、大小为小四,计算结果在程序启动时立即在窗体中显示。效果如图5-2所示。
图5-2
Private Sub Form_Load()
Dim Mark As Variant, i%
Form1.Show
Mark = Array(56, 78, 98, 88, 76, 78)
For i = LBound(Mark) To UBound(Mark)
Print String(Mark(i) \ 5, "◆"); Mark(i)
Next i
End Sub
3. 随机产生20个学生的成绩(整数),统计各分数段人数。即0~59、60~69、70~79、
80~89、90~100,并显示结果,效果如图5-3所示。
要求:(1)单击按钮“产生并显示数据”按钮时,产生的数据在Picture1显示,单击“统计分数段人数”时,统计的结果在Picture2显示。
(2)学生成绩和统计结果分别放在两个不同的数组中。
(3)所有控件字体默认、大小为小四。
图5-3
Dim mark(1 To 20) As Integer
Private Sub Command1_Click() Picture1.Cls
Dim i%, j%
Randomize
For i = 1 To 20
mark(i) = Int(Rnd * 101)
j = j + 1
Picture1.Print Tab((j - 1) * 6); mark(i); If j Mod 4 = 0 Then j = 0: Picture1.Print Next i
End Sub
Private Sub Command2_Click() Picture2.Cls
Dim s(5 To 9) As Integer, i%, k% For i = 1 To 20
k = mark(i) \ 10
Select Case k
Case 0 To 5
s(5) = s(5) + 1
Case 9 To 10
s(9) = s(9) + 1
Case 6 To 8
s(k) = s(k) + 1
End Select
Next i
For i = 5 To 9
If s(i) <> 0 Then
Picture2.Print "s("; i; ")"; "的人数有"; s(i); "个"
End If
Next i
End Sub
4. 通过单击相应按钮,产生原始数据和升降序排列这批数据,对应显示在标签框中,要求:
原始数据为随机产生10个2位数,用选择法升序排列这些数据,用冒泡法降序排列这些数据,窗体中字体默认、大小为小四。效果如图5-4所示。
图5-4
Option Base 1
Dim a%(10)
Private Sub Command1_Click()
Dim i%
Randomize
Label1.Caption = ""
For i = 1 To 10
a(i) = Int(Rnd * 90 + 10)
Label1.Caption = Label1.Caption & " " & a(i)
Next i
End Sub
Private Sub Command2_Click()
Dim i%, j%, t%, Min%
Label2.Caption = ""
For i = 1 To 9
Min = i
For j = i + 1 To 10
If a(j) < a(Min) Then Min = j
Next j
t = a(i)
a(i) = a(Min)
a(Min) = t
Next i
For i = 1 To 10
Label2.Caption = Label2.Caption & " " & a(i)
Next i
End Sub
Private Sub Command3_Click()
Dim i%, j%, t%
Label3.Caption = ""
For i = 1 To 9
For j = i + 1 To 10
If a(j) > a(i) Then
t = a(i)
a(i) = a(j)
a(j) = t
End If
Next j
Next i
For i = 1 To 10
Label3.Caption = Label3.Caption & " " & a(i)
Next i
End Sub
5. 参照教材例5.3,在通用声明阶段声明两个数组,利用随机函数形成两个数组(A中元
素范围在30~70(包括30、70),B中元素范围在100~140(包括100、140)),如产生下列数组:
?58?42A???63??6551615xxxxxxxxxxxx?4?135xxxxxxxx??12113110212?61?4?, B??? ?11911212512?46?6???69?3?11011113413?
要求:① 先产生A、B数组,然后以下三角形式显示A数组,以上三角形式显示B数组。 ② 显示A数组主对角线元素之和及B数组副对角线元素之和。
③ 点击相应的按钮结果在相应的图片框中显示,所有控件字体默认、大小为小四。 效果如图5-5所示。
图5-5
Option Base 1
Dim a(4, 4) As Integer, b(4, 4) As Integer Private Sub Command1_click() Picture3.Cls
Dim i%, j%
For i = 1 To 4
For j = 1 To i
Picture3.Print a(i, j); Spc(1); Next j
Picture3.Print
Next i
End Sub
Private Sub Command2_click() Picture4.Cls
Dim i%, j%
For i = 1 To 4
For j = i To 4
Picture4.Print Tab(6 * (j - 1)); b(i, j); Next j
Picture4.Print
Next i
End Sub
Private Sub Command3_Click() Picture5.Cls
Dim sa%, sb%
sa = 0: sb = 0
For i = 1 To 4
sa = sa + a(i, i)
Next i
Picture5.Print "A数组主对角线元素和为: "; sa
For i = 1 To 4
j = 5 - i
sb = sb + b(i, j)
Next i
Picture5.Print "B数组副对角线元素和为: "; sb
End Sub
Private Sub Command4_Click()
Dim i%, j%
Picture1.Cls
For i = 1 To 4
For j = 1 To 4
a(i, j) = Int(Rnd * 41 + 30)
Picture1.Print a(i, j); Spc(1);
Next j
Picture1.Print
Next i
Picture2.Cls
For i = 1 To 4
For j = 1 To 4
b(i, j) = Int(Rnd * 41 + 100)
Picture2.Print b(i, j); Spc(1);
Next j
Picture2.Print
Next i
End Sub
四、 实验过程中的问题、错误,解决方法,总结、体会、建议。
上海立信会计学院本科实验报告
班级: 学号: 姓名: 指导教师:
系部: 专业: 实验时间:
实验1 VB环境及常用控件、编程基础
一、 实验目的
1. 熟悉VB环境及可视化程序开发方法。
2. 掌握常用控件的使用。
3. 掌握编程基础。
二、实验要求
1. 在C:\下建立子文件夹“VB实验1”,按照题目要求,在该文件夹下为各题保存相应的文件,如本实验中的第一题,需保存的文件有:工程文件(11.vbp)、窗体文件(11.frm) 及可执行文件(11.exe),本实验中的第二题,需保存的文件有:工程文件(12.vbp)、窗体文件(12.frm) 及可执行文件(12.exe),其余实验依此类推。
2. 撰写实验过程中出现了哪些问题、错误,你是如何解决的,做一个小结。
三、 实验内容:
1、建立窗体,要求(没有特殊说明,所有控件的字体和大小均为默认值)
1) 在屏幕上用标签控件Label1显示“欢迎学习VisualBasic”,字号为二号,字体为隶书;
2) 用标签控件Label2显示“请输入你的姓名”(字体为楷体,有下划线),标签后的文本框Text1中输入姓名;
3) 单击“你输入的姓名是”按钮,在Label3标签中显示在文本框Text1中输入的姓名。
运行效果如图1-1所示:
图1-1
Private Sub Command1_Click()
Label3.Caption = Text1.Text
End Sub
2、制作窗体和编写事件代码,在文本框中统计在该窗口上鼠标单击的次数,实验中标签框、文本框的字体、字号、格式均为宋体、三号、粗体。效果如图1-2所示:
图1-2
Private Sub Form_Click()
Text1 = Val(Text1) + 1
End Sub
3、建立窗体和编写代码,完成通过命令按钮改变字体、字号和复制内容及字体、字号格式的练习,初始状态所有控件中文字为宋体、常规、小五。
要求:
1)单击“隶书25磅”按钮,使得Text1中初始输入文本的字体和字号根据按钮上显示要求发生改变;
2)单击“复制=>”按钮,将Text1选中的内容及其字体、字号格式,复制到Text2复制效果文本框中;
控件的属性和最终效果如图1-3所示:
图1-3
Private Sub Command1_Click()
Text1.FontName = "隶书"
Text1.FontSize = 25
End Sub
Private Sub Command2_Click()
Text2.Text = Text1.SelText
Text2.FontName = Text1.FontName
Text2.FontSize = Text1.FontSize
End Sub
4、参考教材例2-2对窗体三个事件过程(Load、Click、DbClick)编程,要求:将鼠标指针改为如KEY04.ICO图标文件样式,设置窗体具有最大化和最小化按钮,程序运行后立即在窗体中装入图片“WINDOW.JPG”,单击窗体后装入图片“COVER01.BMP”,双击窗体后去除图片,每项事件结束后窗体标题均发生变化。
最终效果如图1-4(a)、(b)、(c)所示:
图1-4(a)
图1-4(b)
图1-4(c)
Private Sub Form_Click()
Form1.Caption = "鼠标单击"
Form1.Picture = LoadPicture(App.Path + "\COVER01.BMP")
End Sub
Private Sub Form_DblClick()
Form1.Caption = "鼠标双击"
Form1.Picture = LoadPicture("")
End Sub
Private Sub Form_Load()
Form1.Caption = "装入载体"
Form1.Picture = LoadPicture(App.Path + "\WINDOW.JPG")
End Sub
四、 实验过程中的问题、错误,解决方法,总结、体会、建议。
C++程序设计实验报告学号:姓名:班级:指导老师:实验一、字符和格式的输出实验一,实验目的1、重点把握各种内部数据类型、数值和逻辑…
C语言程序设计实验报告1实验目的(1)掌握函数的定义方法、调用方法、参数说明以及返回值;(2)掌握实参与形参的对应关系,以及参数之…
学生实验报告册(理工类)课程名称:JAVA程序设计实验专业班级:M11计算机科学与技术II学生学号:学生姓名:所属院部:XX学院指…
西南交通大学程序设计综合实验实验地点实验学期学生班级学生学号学生姓名任课教师龚勋信息科学与技术学院20xx年4月实验一ATM机用户…
C语言程序设计实验报告学号不告诉你哦班级信管一班姓名你猜猜哈哈一实验题目一编程实验猜数问题输入两个整数并求这两个整数的和输入所猜的…
湖北文理学院VB程序设计课程实验报告学院物电学院专业自动化班级1211学号20xx118064姓名王亮任课教师王福林1实验一VB控…
综合性实验实验名称用vb编写简单计算器专业班级土木工程0901班学生姓名学号指导教师1需求分析该计算器程序是在VisualBasi…
中北大学课程设计报告学院系专业学生姓名设计题目薛军军软件学院软件工程学号1121011721弹力球游戏起迄日期20xx年5月30日…
vb程序设计实验心得vb程序设计实验心得一数据库VB课程设计心得体会数据库课程设计大赛的尘嚣渐渐远去怀着对这次大赛的些许不舍怀着对…
VB程序设计实验报告一实验目的及要求见实验书要求手填1了解VBNET系统对计算机软件硬件的要求2掌握启动与退出VBNET的方法3掌…
中南财经政法大学实验报告实验课名称VB程序设计学生姓名张琳专业班级信息0904班学号09021275开课时间20xx20xx学年第…