实验报告E.docx

上传人:b****8 文档编号:11094403 上传时间:2023-02-25 格式:DOCX 页数:10 大小:185.42KB
下载 相关 举报
实验报告E.docx_第1页
第1页 / 共10页
实验报告E.docx_第2页
第2页 / 共10页
实验报告E.docx_第3页
第3页 / 共10页
实验报告E.docx_第4页
第4页 / 共10页
实验报告E.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

实验报告E.docx

《实验报告E.docx》由会员分享,可在线阅读,更多相关《实验报告E.docx(10页珍藏版)》请在冰豆网上搜索。

实验报告E.docx

实验报告E

 

南京工程学院

实验报告

 

课程名称程序设计基础——VB

实验项目名称数组

实验学生班级

实验学生姓名

学    号

同组学生姓名

实验时间2011.10.26

实验地点A304

实验成绩评定

指导教师签字 年 月 日

一、实验目的和要求

1.实验目的:

1掌握数组的定义、数组元素的引用;

2掌握静态数组与动态数组的使用差别;

3应用数组解决与数组有关的常用算法。

2.上机调试之前必须携带已经编写完毕的程序源代码,实验过程中主要是进行调试。

3.上机时间不足以完成实验项目的同学利用课外时间做完所有项目。

4.根据所选实验内容完成实验报告。

二、实验主要仪器和设备

计算机

3、实验方法与步骤(需求分析、算法设计思路、流程图等)

实验2:

①以五分为一个符号,所以应用到“\”。

②已知六个成绩,此时要用数组的赋值Array函数来表示。

③再通过for循环语句来实现操作。

④通过string函数来用“◆”表示成绩。

实验4:

①因为要产生10个数,并进行比较,有两个事件,此时要在通用声明段用数组A(9)来定义。

②通过rnd函数和for语句来随机出10个两位数,再用int函数来取整。

③用冒泡法对数组进行排序。

④再用for语句从大到小输出各数。

实验6:

①由于是杨辉三角形,则需定义一个二维数组a(i,j)。

用redim来确定数组大小。

②通过for语句来设置下三角。

③用a(i,0)=1,a(i,j)=1确定第一列和对角线数为1,而其它用a(i,j)=a(i-1,j-1)+a(i-1,j)来确定。

④通过tab函数确定列宽,从而对齐。

实验8:

①建立一个组合框来输入数据。

②对combo1的keypress事件设置使之只能输数字和回车。

在通过additem方法来输入并显示数据。

③声明变量imax,imin来确定最值位置。

④按照求最值的方法求值,并设置一个变量t来让第0项和最小值交换,最大值和最后一项交换。

对各项要用val函数,否则是字符串比较。

实验10:

①在标准模块里定义自定义变量,再在窗体的通用声明段定义变量数组。

②用with语句对数组各元素进行赋值。

③用冒泡法来比较工资大小,并对数组各组数进行排序。

④通过tab函数控制宽度。

 

四、实验原始纪录(源程序、数据结构等)

注:

实验目的和要求由任课教师统一指定

 

实验2:

PrivateSubForm_Click()

Dima(),n!

m!

a=Array(56,78,98,88,76,78)

n=UBound(a)

Fori=0Ton

m=a(i)\5

PrintString(m,"◆");a(i)

Print

Nexti

EndSub

实验4:

OptionExplicit

Dima!

(9),i%,j%,t!

 

PrivateSubCommand1_Click()

Fori=0To9

Forj=9To1+iStep-1

Ifa(j)>a(j-1)Then

t=a(j):

a(j)=a(j-1):

a(j-1)=t

EndIf

Nextj

Nexti

Print"排序后"

Forj=0To9

Printa(j);

Nextj

Print

Print

EndSub

PrivateSubForm_Click()

Fori=0To9

a(i)=Int(Rnd*89+10)

Printa(i);

Nexti

Print

EndSub

实验6:

PrivateSubText1_LostFocus()

Dima!

(),n%,i%,j%

n=Val(Text1.Text)

ReDima(n-1,n-1)

Fori=0Ton-1

Forj=0Toi

a(i,0)=1

Ifi=jThen

a(i,j)=1

Else

Ifj>=1Then

a(i,j)=a(i-1,j-1)+a(i-1,j)

EndIf

EndIf

Picture1.PrintTab(6*j);a(i,j);

Nextj

Picture1.Print

Nexti

EndSub

实验8:

PrivateSubCombo1_KeyPress(KeyAsciiAsInteger)

Dimn!

SelectCaseKeyAscii

Case48To57,13

CaseElse

KeyAscii=0

EndSelect

n=Val(Combo1.Text)

IfKeyAscii=13Then

List1.AddItemTrim(Str(n)),0

Combo1.Text=""

Combo1.SetFocus

EndIf

EndSub

PrivateSubCommand1_Click()

Dimi!

j!

imin!

imax!

t

i=List1.ListCount-1

imin=0

Forj=1Toi

IfVal(List1.List(j))

imin=j

EndIf

Nextj

t=List1.List(0):

List1.List(0)=List1.List(imin):

List1.List(imin)=t

imax=0

Forj=1Toi

IfVal(List1.List(j))>Val(List1.List(imax))Then

imax=j

EndIf

Nextj

t=List1.List(i):

List1.List(i)=List1.List(imax):

List1.List(imax)=t

EndSub

实验10:

模块定义自定义变量:

OptionExplicit

Typeabctype

NameAsString*5

NumberAsInteger

SalaryAsLong

EndType

窗体:

OptionExplicit

Dimi%,tAsabctype

Dima(4)Asabctype

Dimn%

PrivateSubCommand1_Click()

Ifn>=5Then

MsgBox("输入人数超过数组声明个数")

Text1="":

Text2="":

Text3="":

Else

Witha(n)

.Number=Text1

.Name=Text2

.Salary=Text3

EndWith

Text1="":

Text2="":

Text3="":

n=n+1

Picture1.PrintTrim(Str(a(n-1).Number));Tab(15);Trim(a(n-1).Name);Tab(27);Trim(Str(a(n-1).Salary))

EndIf

EndSub

PrivateSubCommand2_Click()

Dimj!

Forj=0Ton-1

Fori=1Ton-1-j

Ifa(i).Salary>a(i-1).SalaryThen

t=a(i):

a(i)=a(i-1):

a(i-1)=t

EndIf

Nexti

Nextj

Picture1.Cls

Picture1.Print"工号";Tab(15);"姓名";Tab(27);"工资"

Fori=0Ton-1

Picture1.PrintTrim(Str(a(i).Number));Tab(15);Trim(a(i).Name);Tab(27);Trim(Str(a(i).Salary))

Nexti

EndSub

PrivateSubForm_Load()

Picture1.Print"工号";Tab(15);"姓名";Tab(27);"工资"

EndSub

 

5、实验结果及分析(计算过程与结果、数据曲线、图表等)

实验2:

实验4:

实验6:

 

实验8:

实验10:

 

六、实验总结与思考

这次实验主要了解数组的使用,声明及元素的使用,而且知道定长数组和动态数组的使用差别,掌握了数组的常用的操作和算法,也加强了之前的求最值,冒泡法和交换数组元素位置的算法。

与此同时知道列表框和组合框的使用,又知道自定义类型变量及数组的使用及其简单算法。

这次实验加强了课上老师所讲的知识点,强化了对其的理解,深化了对vb的认识。

 

教师评语:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 政史地

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1