VB程序设计课程实验报告样本参考一Word文档下载推荐.docx
《VB程序设计课程实验报告样本参考一Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《VB程序设计课程实验报告样本参考一Word文档下载推荐.docx(26页珍藏版)》请在冰豆网上搜索。
![VB程序设计课程实验报告样本参考一Word文档下载推荐.docx](https://file1.bdocx.com/fileroot1/2023-2/2/a38bd162-3ee4-4df5-a00b-dfba3135f623/a38bd162-3ee4-4df5-a00b-dfba3135f6231.gif)
实验九
10
菜单设计和多文档界面
计算机与信息学院实验报告
(一)VisualBasic环境和程序设计的初步
一、实验目的
1、了解VisualBasic系统对计算机软件、硬件的要求。
2、掌握启动与退出VisualBasic的方法。
3、熟悉VisualBasic的集成开发环境(IDE)。
4、掌握在窗体上添加控件的各种方法。
5、掌握建立、编辑、运行和保存一个简单的VisualBasic应用程序的全过程。
二、实验内容
1、启动VisualBasic6.0,观察标题栏、菜单栏、工具栏与Microsoft其他应用程序的不同之处;
熟悉各个控件以及窗体设计和工程管理器窗口、属性窗口、代码窗口的功能、组成以及它们各种不同的打开方法。
2、在窗体上画一文本框个一个命令按钮,在文本框中显示“VB程序设计”。
(1)编写适当事件过程,当单击命令按钮时,文本框内容消失。
(2)以解释方式运行程序。
(3)把程序保存。
然后关掉该工程。
装入上面建立的程序,并在窗体上增加一个命令按钮。
当单击该命令按钮,结束程序运行。
保存程序。
(4)把当前程序编译为可执行文件。
(5)生成当前工程并退出。
在windows环境下运行该工程。
3、创建一个“标准EXE”类型的应用程序。
要求:
在屏幕上显示“欢迎您的到来!
”,并请输入您的名字。
三、实验环境
MicrosoftVisualBasic6.0中文版
四、算法描述及实验步骤
1、熟悉vb的环境。
2、先创建一个文本框和命令按钮,并设置相应的代码如下:
PrivateSubForm_Load()
Text1.Text="
VB程序设计"
EndSub
PrivateSubCommand1_Click()
"
3、创建两个标签和一个文本框。
在属性窗口设置两个标签的caption的值分别为:
欢迎你的到来!
和请留下您的尊姓大名:
,并设置相应的字体。
五、调试过程
无错误
六、实验结果
1、
2、
七、总结
答:
从中的到的知识是更了解了VB集成开发环境,掌握了在窗体上添加控件的各种方法。
(二)顺序程序设计
一、实验目的和要求
1.掌握常用内部函数的使用
2.掌握表达式,赋值语句的正确书写规则
3.掌握InpueBox和MsgBox的使用
二、实验内容和原理
1.用立即窗口试验每一个内部函数的操作,并验证数值以及日期时间的各种格式化输出方式。
2.创建如图所示的应用程序,要求:
单击窗体显示如图所示的图形。
3.创建如图所示的应用程序,要求:
单击“放大”按钮后,将文本中显示的字符串放大2~3倍;
若单击按钮“还原”按钮。
则将文本框显示的字符串大小返原。
MicrosoftVisualBasic6.0中文版
1.PrivateSubForm_Click()
PrintInt(3.3);
Spc
(1);
:
PrintInt(-5.3);
PrintFix(6.9);
PrintFix(-7.6);
PrintRound(7.5);
PrintRound(-7.5);
PrintHex(20);
PrintOct(20);
PrintAsc("
w"
);
PrintChr(70);
PrintVal("
132"
PrintStr(122);
Spc
(1)
PrintSin(30);
PrintCos(30);
Spc
(1):
PrintTan(45);
PrintAtn(453);
PrintAbs(-8);
PrintSgn(-4);
PrintSqr(4);
;
PrintExp(6);
PrintLog(4);
PrintDay(Now);
PrintMonth(Now);
PrintYear(Now);
PrintHour(Now);
PrintMinute(Now);
PrintSecond(Now);
PrintTrim("
wgx"
PrintLTrim("
wgxwgx"
PrintRTrim("
wgxwgx"
PrintLeft("
2);
PrintMid("
2,3);
PrintRight("
wgxgwx"
3);
PrintLen("
wWgGxX"
PrintString(3,65);
PrintInStr("
wgxwGX"
"
x"
PrintUCase("
PrintLCase("
WGX"
2.PrivateSubForm_Click()
PrintTab(20);
"
*"
**"
;
Spc(4);
Spc(6);
Spc(8);
Spc(10);
Spc(12);
Spc(14);
*********"
3.PrivateSubCommand1_Click()
Text1.FontSize=12
Text1.FontSize=Int(Rnd*2+2)*Text1.FontSize
PrivateSubCommand2_Click()
Text1.FontSize=12
五、实验结果
1.
2.
3.
六、总结
答:
从这节实验中掌握了常用内部函数的使用,还有表达式赋值语句的正确书写规则,掌握了Inputbox与MSGBOX的使用.
(三)选择结构程序设计
1.掌握If条件语句的使用。
2.掌握情况语句的使用,以及情况语句与多分支条件语句的使用区别。
1.请编一程序用于在期末时根据学生总分情况给于奖励,条件如下:
四门总分不低与360分(含360分),特等奖:
四门总分320(含320分)~360分(不含360分),优秀奖:
单科成绩不低于95分,特别奖。
2.输入X,Y,Z三个数,按从小到大的次序显示出来.要求:
程序中不得使用循环结果和转向语句;
掌握两个数据交换的方法。
3.编一个简易计算器的应用程序。
掌握Select语句和If语句的正确使用;
掌握对输入数据合法性检验的能力和当输入有错误时出错处理的能力。
1.PrivateSubCommand1_Click()
Dimt1AsInteger
Dimt2AsInteger
Dimt3AsInteger
Dimt4AsInteger
DimsumAsInteger
t1=Val(Text1.Text)
t2=Val(Text2.Text)
t3=Val(Text3.Text)
t4=Val(Text4.Text)
sum=t1+t2+t3+t4
IfText1.Text="
OrText2.Text="
OrText3.Text="
OrText4.Text="
Then
MsgBox"
请输入成绩值"
0,"
成绩不为空"
ElseIfsum>
=360Then
您获得了特等奖"
祝贺"
=320Then
您获得了优秀奖"
ElseIft1>
=95Ort3>
=95Ort4>
=95Then
您获得了特别奖"
EndIf
Label2.Caption=t1+t2+t3+t4
Endsub
2.Dimt1AsInteger
Dimt3AsInteger
DimtempAsInteger
PrivateSubPro()
Ift1>
t2Then
temp=t1
t1=t2
t2=temp
t3Then
t1=t3
t3=temp
Ift2>
temp=t2
t2=t3
Text4.Text=Str(t1)
Text5.Text=Str(t2)
Text6.Text=Str(t3)
PrivateSubText1_Change()
Text1.Text=Val(Text1.Text)
CallPro
PrivateSubText2_Change()
Text2.Text=Val(Text2.Text)
Pro
PrivateSubText3_Change()
Text3.Text=Val(Text3.Text)
3.DimoperAsString
有某数没有数值!
5,"
错误提示"
Else
IfText3.Text="
+"
Text4.Text=Str(Val(Text1.Text)+Val(Text2.Text))
ElseIfText3.Text="
-"
Text4.Text=Str(Val(Text1.Text)-Val(Text2.Text))
Text4.Text=Str(Val(Text1.Text)*Val(Text2.Text))
Text4.Text=Str(Val(Text1.Text)Val(Text2.Text))
UnloadMe
IfVal(Text2.Text)=0Then
除数分母不能为零"
Text2.Text="
运算操作符有错误!
Text3.Text="
Text3.SetFocus
EndSub
无错误。
从此此实验中掌握了IF语句的使用.掌握情况语句的使用,以及情况语句与多分支语句的使用区别.
(四)循环结构程序设计及数组的运用
1.掌握For语句的使用。
2.掌握Do语句的各种形式的使用。
3.掌握如何控制循环条件,防止死循环和不循环。
4.掌握数组的声明以及数组元素的引用。
5.掌握静态数组和动态数组的使用差别。
6.应用数组解决与数组有关的常用算法问题。
编程计算1-2+3-4+5-6+·
·
+n的值,其中n由文本框输入。
运行结果可参考如下图。
掌握For语句的正确使用。
DimsumAsLong
IfVal(Text1.Text)=0Then
不能为零"
错误"
ElseIfVal(Text1.Text)<
6Then
Fori=1ToVal(Text1.Text)
IfiMod2<
>
0Andi<
1Then
Label2.Caption=Label2.Caption+"
Label2.Caption=Label2.Caption+Str((-1)^(i+1)*i)
Next
Add
Label2.Caption=Label2.Caption+Str(sum)
Label2.Caption="
1-2+3-4+5+·
IfVal(Text1.Text)Mod2=0Then
+Text1.Text+"
="
PrivateSubText1_LostFocus()
Text1.Text=Str(Val(Text1.Text))
PrivateSubAdd()
sum=sum+(-1)^(i+1)*i
从此次实验中得到的是掌握了FOR语句的使用,还有的是DO语句的各种形式的使用,如何控制循环和防止死循环或不循环.
(五)过程
1、掌握自定义函数过程和子过程的定义和调用方法。
2、掌握形参和实参的对应关系。
3、掌握值传递和地址传递的传递方式。
4、掌握递归的概念和使用方法。
1、编程计算的子过程和函数过程,并分别调用。
其中X和n的值由用户给定。
2、编写函数S(mAsInteger,nAsInteger)AsLong,此函数返回m+mm+mmm+…+mm…m(n个m)的值。
比如S(2,5)的返回值为2+22+222+2222+22222的值。
运行后的结果如图所示。
3、编写递归函数求1+2+3+…+n的值,并显示结果。
其中n的值由用户给定。
SVal(Text1.Text)
If(Val(Text1.Text)>
=3)Then
Label1.Caption="
1+2+2^2+·
+2^"
Fori=0ToVal(Text1.Text)
Ifi=Val(Text1.Text)Then
Label1.Caption=Label1.Caption+Str(2^i)+"
+"
Text2.Text=Str(sum)
PrivateFunctionS(countAsInteger)AsLong
sum=0
Fori=0Tocount
sum=sum+2^i
EndFunction
此次实验中得到的结果是掌握自定义函数过程和子过程的定义和调用方法。
掌握窗体与常用控件的重要属性、事件和方法。
1.设计一个界面,要求程序运行时选中组合框中的某一项,将弹出对话框加以说明。
2.在窗体上画一个名称为HIS的水平滚动条,标题分别为:
“左端”、“居中”、“右端”的命令按钮。
请编写适当的事件过程,使得在运行后,如果单击“左端”,则滚动条在最左端处,如果单击“居中”,则滚动条在最中间处如果单击“右端”,则滚动条在最右处,
1.PrivateSubCombo1_Click()
MsgBox"
我的兴趣爱好是"
+Combo1.Text,0,"
兴趣爱好"
2.PrivateSubCommand1_Click(IndexAsInteger)
HScroll1.Value=0
HScroll1.Value=10
PrivateSubCommand3_Click(IndexAsInteger)
HScroll1.Value=5
1.
此次实验最重要的是掌握了窗体和常用控件的重要属性、事件和方法
(七)常用控件
掌握常用空间的重要属性、时间和方法。
1、在窗体上画一个图片框和两个命令按钮。
程序运行后,如果单击“显示图片”命令按钮,则在图片框装入一个用图形编辑软件(如Windows下的“画图”)画的简单的图形。
单击“清除图片”按钮,则清楚图片框的图形。
2、编写一个模拟秒表操作的程序,运行时的界面如图所示。
程序运行后,单击“启动”按钮,该按钮变灰(不可用),在上面的标签中显示开始时间。
过一会儿,单击“停止”按钮,该按钮变灰,同时“启动”按钮可用,并在中间标签中显示当前时间,在下面的标签中显示经过的时间
Picture1.Picture=LoadPicture("
E:
\VB实验\图片显示\49519_295.gif"
Picture1.Picture=LoadPicture
2.PrivateSubCommand1_Click()
Label2.Caption=DateTime.Time
Timer1.Enabled=False
Label4.Caption=DateTime.Time
Label6.Caption=DateDiff("
s"
CDate(Label2.Caption),CDate(Label4.Caption))
PrivateSubTimer1_Timer()
在此次的实验中掌握了常用控件的重要一些属性、事件和方法。
(八)气泡法排序程序
实现数组的赋值与大小的排列。
将相邻两个数进行比较,按由小到大将这两个数排好序,在将下一组数组进行比较,依此处理,直到将最后两个数比较并处理完毕。
最大的数已换到最后位置。
这是第一轮的比较处理。
每进行一轮,就把剩下的数中最大的一个移动最后位置。
共进行若干轮。
Subform