VB实验报告一
VB实验报告

VB实验报告实验一、VB控制结构[实验目的]1.掌握选择语句的使用2.掌握循环语句的使用[实验内容]一、VB编程基础练习:在应用程序的代码窗口中分别输入以下四段代码,当程序运行时在窗体上单击,分别会发生什么情况,为什么?①Private Sub Form_Click()I = 10Print IEnd Sub②Private Sub Form_Click()Dim I%I = 10Print IEnd Sub③Option ExplicitPrivate Sub Form_Click()I = 10Print IEnd Sub④Option ExplicitPrivate Sub Form_Click()Dim I%I = 10Print IEnd Sub第一个程序运行的结果是:点击一次窗体便会出现一个“10”第二个程序的运行结果是:也是点击一次窗体出现一个“10”第三个程序运行的结果是:无法运行,显示变量未定义第四个程序运行的结果是:在应用程序的代码窗口中分别输入以下两段代码,当程序运行时在窗体上反复单击,分别会发生什么情况,为什么?Private Sub Form_Click()Dim n As Integern = n + 1Print nEnd SubPrivate Sub Form_Click()Static n As Integern = n + 1Print nEnd Sub第一个程序运行结果是:第二个程序运行的结果是:二、选择语句程序1:创建应用程序。
要求:单击窗体可弹出输入框,任意输入三个数,然后按从小到大的顺序输出到窗体上。
Private Sub Text1_Change()Dim X1 As Single, X2 As Single, X3 As Single, Temp As Single '定义x1,x2,x3,tempX1 = CSng(InputBox("请输入第1个数:", "输入数据")) '弹出请求输入数据x1的文本框X2 = CSng(InputBox("请输入第2个数:", "输入数据")) '弹出请求输入数据x2的文本框X3 = CSng(InputBox("请输入第3个数:", "输入数据")) '弹出请求输入数据x3的文本框If X1 > X2 ThenTemp = X1: X1 = X2: X2 = Temp '比较x1,x2,若x1大于x2将两值交换End IfIf X1 > X3 ThenTemp = X1: X1 = X3: X3 = Temp '比较x1,x3,若x1大于x3将两值交换End IfIf X2 > X3 ThenTemp = X3: X3 = X2: X2 = Temp '比较x2,x3,若x2大于x3将两值交换End IfPrint: PrintPrint "输出结果:" ’在屏幕上输出“输出结果:”PrintPrint x1,x2,x3 ’在屏幕上输出x1,x2,x3End Sub三、循环语句程序3:创建应用程序。
VB实验报告一

《VB程序设计》实验单元一实验报告专业班级:姓名学号指导教师:完成时间:实验一VB环境和可视化编程基础一、实验目的1 了解Visual Basic的安装2 掌握启动与退出Visual Basic3 掌握建立、编辑和运行一个简单应用程序的全过程4 掌握基本控件的使用二、实验环境VB6.0三、实验内容1、编写一程序,在文本框中统计在该窗口上鼠标单击的次数。
提示:对窗口编写两个事件:Form_Load事件对文本框初值设为空;Form_Click事件对文本框计数。
对文本框计数:Text1=Val(text1)+1 。
2、命令按钮、字号、内容和格式的复制练习。
按钮1:使得Text1中的文本按要求改变。
按钮2:将Text1中选定的文本复制到Text2.控件名属性Form1 Caption=”实验2”Label1 复制文本Label2 输入文本Text1 Text=“VB功能强大,但要下功夫学习才能学好。
”Text2 Text=””Command1 Caption=”隶书25磅”Command2 Caption=”复制=>”四、实验步骤1、建立窗体Form2、设置类和对象3、编写程序代码4、保存工程5、运行启动工程即可五、实验结果实验二VB语言基础和顺序结构一、实验目的1、掌握正确书写表达式、赋值语句的规则2、掌握常用函数的使用3、掌握InputBox与MsgBox的使用4、掌握Print和Format的使用二、实验环境VB6.0三、实验内容1、输入半径的值,分别计算并输出圆的面积、圆的周长和球的体积。
2、随机产生一个3位正整数,然后逆序输出,产生的随机数与逆序数同时显示。
例如735,输出537.提示:利用“Mod”和“\”将一个3位数分离出3个1位数,然后连接成一个逆序的3位数。
四、实验步骤1.创建窗体2、建立类和对象(Command、Text)3、编写相应的程序代码4、保存工程5、启动运用即可五、实验结果实验三选择结构一、实验目的1、掌握逻辑表达式的正确书写形式。
VB实验报告01

实验报告01:熟悉Visual Basic 6.0编程环境一、实验目的1.熟悉Visual Basic 6.0编程界面。
2.掌握编写VB6.0程序的基本过程。
3.能够建立VB工程,制作应用程序界面,输入程序代码,并执行程序和生成EXE可执行程序。
二、实验内容1.熟悉VB编程界面2.编写程序。
(1)在使用VB系统设计应用程序时,一般包括两个阶段,分别是界面设计阶段和代码设计阶段。
(2)一个完整的VB工程包括一个工程文件(*.vbp)、至少一个窗体文件(*. frm )。
(3)某个程序的界面设计如图所示:其中在窗体上显示文字的是标签控件。
需要将窗体的Caption 属性设置为“欢迎窗口”。
3.设计一个简单的VB程序,界面和各个对象属性初值如下:对象属性初值按钮1(Command1)Caption 确定按钮2(Command3)Caption 结束标签1(Label1)Caption 请输入你的姓名标签2(Label2)Caption 空文本框(Text1)Text 空要求:输入姓名后,单击“确定”按钮,将在下方Lable2标签中显示文本框中姓名&“,祝你学好VB程序设计!”(1)界面设计:向窗体中添加两个按纽(C ommand1、Command2)、二个标签(Lable1、Lable2)、一个文本框(Text1)。
(2)设置好各对象属性值。
(3)编写两个命令按钮的事件代码。
(4)调试运行程序。
(5)在桌面上建立文件夹,保存工程,工程文件命名为sy1_1.vbp,窗体文件命名为sy1_1.frm。
三、思考题1.VB采用了面向对象的程序设计思想。
2.窗体上有一个文本框Text1,为了在该文本框中显示“Hello!”,所使用的语句是Text1.Text=”Hello!”。
3.用户在输入程序代码时,是否需要区分大小写?词与词之间的空格是否可以删除?答:不需要区分大小写。
词与词之间的空格不可以删除。
4.简单说明VB应用程序的开发步骤答:(1)创建工程(2)建立用户界面(3)设置各个对象的属性(4)编写事件过程代码(5)运行调试程序(6)保存程序(7)生成可执行文件。
VB实验报告册

实验报告一(循环与数组)实验目的:通过学习,要求掌握选择语句结构if 语句、 Select case 语句、While wend 语句 、For Next 语句,do while (until ) loop 语句的基本书写格式,以及要掌握累和与累乘以及杨辉三角的算法进行演算。
实验要求:1.编辑,输入X 值,按下式计算并输出Y 的值Y=f(x)=2.计算下式的和,变量X 与N 的数据值用输入对话框输入)!1(............!4!3!232+++++=n x x x x s n3.用近似公式求自然对数据的底数E 的值,直到前后两项之差小于10-4为止。
E ≈!1..............31!21!111n ++++ 4.编程,输入n(n 为1位整数),输出n+1层的杨辉三角形。
如n 为6时,输出结果如下所示。
11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 11 6 15 20 15 6 1实验步骤:实验体会:x+3 x>3 x 2 1<=x<= 3Sqr(x) 0<x<1 0 x<=0实验目的:通过学习,要求熟练掌握常用控件:textbox commandbox labelbox 控制的用法;掌握optionbox 与listbox的方法,属性及事件,对于定时器与滚动条的基本用法要学会运用与操作。
实验要求:1.编制一个用于进制转换的应用程序,运行时的界面如图2.编制一个“偶数迁移”程序设计,运行界面如图:具体要求为:窗体的标题为“偶数迁移”,单击“产生”按钮,计算机随机产生10个两位正整数放入列表框里list1中,同时清空列表框list2中的内容。
单击“- ”按钮,将列表框list1中所有的偶数迁移到列表框list2中。
3.设计一个字幕推出程序。
标签的字号在定时时器的控制下每个时间间隔放大2磅并且保持标签在窗体中水平居中,当标签的字号超过72时,定时器停止响应Timer事件,字号放大的速度由水平滚动条控制。
VB实验报告书一

课程名称 实验项目名称 实验者 邵佳 学号 信息系统程序设计 VB 简单的 VB 程序设计 20525811127 专业班级 实验成绩 批阅教师 经管 2111 刘星星 实验日期
一、实验预习报告(实验目的、内容,主要设备、仪器,基本原理、实验步骤等) 一、实验目的
1、掌握启动与退出 VB 的方法; 2、掌握建立、编辑和运行一个简单的 VB 应用程序的过程。 3、掌握常用控件的应用。
二、实验主要仪器设备及耗材
实验室计算机。
三、实验内容
1、教材 301 页实验一:实验 每个学生独立完成一份实验报告, 将实验报告结果编辑成文档上交, 只须交电子版, 做好后请先交学习委员, 学习委员再统一交给我。请将实验报告更名成如下形式:学号+姓名,如华川同学须将每一次实验报告更名 为:01 华川.DOC。 2、 实验报告要求在实验过程记录部分用截图的形式, 记下实验内容中每一个实验的代码截图及运行后的屏幕截 图。 3、实验报告要求在实验分析与总结部分回答问题。 4、若交上来的实验报告有发现完全雷同或绝大部分雷同,将视这些报告全部未交。请保护自己的产权,也给别 人一个好好学习的机会。
注:1、因不允许上网,故请每位同学自备 U 盘或其它移动存储设备,或与其他同学共用。 2、没有网络的情况下截图: ①抓取全屏:直接按一下 PrintScreen 键,系统会自动将当前全屏画面保存到剪贴板中,只要打开 任意一个编辑软件然后粘贴后就可以看到了,当然还可以另存或编辑。 提示:PrintScreen 键一般位于 F12 的右侧。 ②抓取当前窗口:按住 Alt 键再按下 PrintScreen 键就可只将当前的活动窗口抓下了。
二、实验过程记录(包括实验过程、数据记录、实验现象等)
VB实验报告一2024

VB实验报告一(二)引言概述:VB(VisualBasic)是一种面向对象的程序设计语言,广泛应用于Windows操作系统中的软件开发。
本实验报告旨在详细介绍VB实验一(二)的内容与实验结果,并对其进行分析和总结。
正文内容:一、实验目的1.1学习VB语言的基本语法和开发环境的使用;1.2熟悉VB的界面设计和事件处理;1.3掌握VB语言中的数据类型、循环结构和条件语句。
二、实验步骤2.1搭建VB开发环境2.1.1并安装VisualStudio;2.1.2配置VB开发环境。
2.2界面设计2.2.1创建一个新的WindowsForms应用程序;2.2.2在设计窗口中添加控件,如按钮、文本框等;2.2.3设置控件的属性和事件。
2.3事件处理2.3.1编写相应按钮的Click事件处理程序;2.3.2实现按钮的功能,如计算、跳转等。
2.4数据类型的应用2.4.1声明和初始化变量;2.4.2使用不同数据类型进行计算和赋值。
2.5循环结构和条件语句2.5.1使用For循环和While循环实现特定功能;2.5.2利用条件语句实现条件判断。
三、实验结果3.1搭建VB开发环境成功;3.2界面设计符合预期,控件添加和属性设置正确;3.3事件处理程序编写无误,按钮功能正常;3.4数据类型的应用正确,计算和赋值结果准确;3.5循环结构和条件语句的实现正确。
四、分析与讨论4.1在搭建VB开发环境的过程中,可能会遇到版本兼容性问题,需要根据实际情况进行相应的配置和调整;4.2界面设计的合理布局与控件的正确设置对用户体验起到重要作用;4.3事件处理程序的编写需要注意语法的正确性和逻辑的严谨性;4.4在应用不同数据类型进行计算和赋值时,要注意数据类型的转换和溢出的问题;4.5循环结构和条件语句的合理运用能够简化程序的逻辑结构,提高代码的可读性和可维护性。
五、总结通过本次VB实验一(二)的学习和实践,我对VB语言的基本语法和开发环境的使用有了更加深入的了解。
VB实验报告

实验一:常用标准控件(一)实验1.1 标签的使用(一)实验1.3 文本框的使用T2.text=t1.text实验1.4 命令按钮的使用(一)c1.width=c1.width+100实验1.5 命令按钮的使用(二)实验1.7 命令按钮与文本框的使用(一)Text2.Text= Text1.Text实验1.8 命令按钮与文本框的使用(二)Text1.Left=0实验1.9 命令按钮与文本框的使用(三)Text1.FontBold = TrueText1.Font.Italic = True实验二:常用标准控件(二)实验2.1 选项按钮的使用Private Sub Option1_Click()Text1.Alignment = 0End SubPrivate Sub Option2_Click()Text1.Alignment = 2End SubPrivate Sub Option3_Click()Text1.Alignment = 1End SubPrivate Sub Option4_Click()Text1.FontName = “宋体”End SubPrivate Sub Option5_Click()Text1.FontName = “黑体”End Sub实验2.3 图像的使用Private Sub Cmd1_Click()Image1.Picture = LoadPicture(“c:\vb\sy02\图片1.jpg”) End SubPrivate Sub Cmd2_Click()Image1.Picture = LoadPicture()End Sub实验2.4 图片框和滚动条的使用Private Sub Command1_Click()VScroll1.Min = 100VScroll1.Max = 2400rgeChange = 200VScroll1.SmallChange = 20End SubPrivate Sub VScroll1_Scroll()Picture1.Height=Vscroll1.ValueEnd Sub实验2.5 滚动条的使用Private Sub Form_Activate()Hscroll1.setfocusEnd SubPrivate Sub HScroll1_Change()Text1.Text=Hscroll1.ValueEnd SubShape1.Shape=L1.TextEnd Sub实验2.7 图形的使用(二)Shape1.Shape=3End SubPrivate Sub Command2_Click()Shape1.BorderColor = Shape1.Bordercolor=&HFF&End SubLabel1.Caption=NowEnd Sub实验三:选择结构实验3.1 汽车移动Private Sub Command1_Click()’Timer1.Enabled = TrueEnd SubPrivate Sub Command2_Click()'Timer1.Enabled = FalseEnd SubPrivate Sub Form_Load()Picture1.Picture = LoadPicture("C:\VB\Sy03\CARS.ICO") End SubPrivate Sub Timer1_Timer()Picture1.Left = Picture1.Left + 100If Picture1.Left + Picture1.Width >= Form1.Width Then Picture1.Left = 0End IfEnd Sub实验3.2 爱好选择Dim s As StringPrivate Sub Check1_Click()If Check1.Value = 1 ThenFrame1.Enabled = TrueElseFrame1.Enabled = FalseEnd IfEnd SubPrivate Sub Check2_Click()If Check2.Value = 1 ThenFrame2.Enabled = TrueElseFrame2.Enabled = FalseEnd IfEnd SubPrivate Sub Command1_Click()If Check1.Value = 1 ThenIf Option1.Value = True Thens = "古典音乐"Elses = "流行音乐"End IfEnd IfIf Check2.Value = 1 ThenIf Option3.Value = True Thens = s & "篮球"Elses = s & "羽毛球"End IfEnd IfLabel2.Caption = sEnd SubPrivate Sub Form_Load()Check1.Value = 1Check2.Value = 1End Sub实验3.3 圆的运动Dim d As IntegerPrivate Sub Command1_Click()Timer1.Enabled = TrueEnd SubPrivate Sub Command2_Click()Timer1.Enabled = FalseEnd SubPrivate Sub Form_Load()d = 1End SubPrivate Sub Timer1_Timer()If Option1 ThenShape2.Top = Shape2.Top + d * 50If Shape2.Top <= Shape1.Top Or Shape2.Top + Shape2.Width >= Shape1.Top + Shape1.Height Thend = -dEnd IfElseIf Option2 ThenShape2.Left = Shape2.Left + d * 50If Shape2.Left <= Shape1.Left Or Shape2.Left + Shape2.Width >= Shape1.Left + Shape1.WidthThend = -dEnd IfEnd IfEnd Sub实验3.4 交通工具和目的地选择Private Sub Form_Click()'学生编写If Op1.Value = True ThenIf Op3.Value ThenLab1.Caption = "坐飞机去广州"ElseIf Op4.Value ThenLab1.Caption = "坐飞机去昆明"End IfElseIf Op3.Value ThenLab1.Caption = "坐火车去广州"ElseIf Op4.Value ThenLab1.Caption = "坐火车去昆明"End IfEnd IfEnd Sub实验3.5 交换与连接Private Sub Form_Click()'学生编写If Op1.Value Thent = Text1.TextText1.Text = Text2.TextText2.Text = tLab1.Caption = "交换成功"ElseLab1.Caption = Text1.Text + Text2.TextEnd IfEnd Sub实验3.6 大小写转换Dim n As IntegerPrivate Sub Text1_Change()Dim ch As Stringch = Right$(Text1.Text, 1)If ch >= "A" And ch <= "Z" ThenLabel1.Caption = LCase(ch)n = n + 1ElseIf ch >= "a" And ch <= "z" ThenLabel1.Caption = UCase(ch)n = n + 1ElseLabel1.Caption = chEnd IfLabel2.Caption = nEnd Sub实验四:循环结构实验4.1 分解单词Private Sub Command1_Click()Dim S1 As String, S2 As StringDim I1 As IntegerS1 = Text1.TextI1 = 1DoDo While Mid(S1, I1, 1) <> “” And I1 <= Len(S1) S2 = S2 & Mid(S1, I1, 1)I1 = I1 + 1LoopList1.AddItem S2S2 = “”I1 = I1 + 1Loop While I1 <= Len(S1)End Sub实验4.2 列表框内容移动Private Sub C1_Click()Dim k As Integerk = 0While (k < List2.ListCount)If List2.Selected(k) = True ThenList1.AddItem List2.TextList2.RemoveItem kEnd Ifk = k + 1WendEnd SubPrivate Sub C2_Click()List2.AddItem List1.TextList1.RemoveItem List1.ListIndexEnd Sub实验4.3 图案输出Private Sub Form_Click()For i = 1 To 5For j = 1 To 6 - iPrint " ";Next jFor j = 1 To 2 * i - 1Print "*";Next jPrintNext iFor i = 1 To 4For j = 1 To i + 1Print " ";Next jFor j = 1 To 2 * (5 - i) - 1Print "*";Next jPrintNext iEnd Sub实验4.4 因子个数Private Sub Command1_Click()Dim m As Integer, s As IntegerClsm = InputBox("请输入一个整数")s = 0For k = 1 To Abs(m) / 2If m Mod k = 0 Thens = s + 1Print kEnd IfNext kPrint "因子数="; SEnd Sub实验4.5 城市选择Private Sub Command1_Click()Dim k As IntegerFor k = List1.ListCount - 1 To 0 Step -1If List1.Selected(k) = True ThenList2.AddItem List1.List(k)List1.RemoveItem kEnd IfNext kEnd SubPrivate Sub Command2_Click()Dim k As IntegerText1 = "已经选中的城市有:"For k = 0 To List2.ListCount - 1 Step 1Text1 = Text1 & " " & List2.List(k)Next kEnd Sub实验4.6 产生数列Private Sub Command1_Click()Text4 = ""a = Val(Text1)b = Val(Text2)n = Val(Text3)Text4 = Text4 & a & " " & bk = 2Do While k < nc = a * bk = k + 1If c < 10 ThenText4 = Text4 & " " & ca = bb = cElsed = c \ 10Text4 = Text4 & " " & da = dk = k + 1If k <= n Thend = c Mod 10Text4 = Text4 & " " & db = dEnd IfEnd IfLoopEnd Sub实验4.7 添加或删除列表框中内容Private Sub Command1_Click()Text1.Text = InputBox("请输入要添加的项目")List1.AddItem Text1.TextEnd SubPrivate Sub Command2_Click()Text1.Text = InputBox("请输入要删除的项目")For i = 0 To List1.ListCount - 1If List1.List(i) = Text1.Text ThenList1.RemoveItem iEnd IfNext iEnd Sub实验五:数组与字符串实验5.1 查找Option Base 1Dim a(10)Private Sub Command1_Click()Text1.Text = "": Text2.Text = ""For i = 1 To 10a(i) = Fix(Rnd * 90 + 10)For j = 1 To i - 1If a(i) = a(j) Theni = i - 1Exit ForEnd IfNext jNext iFor i = 1 To 10Text1.Text = Text1.Text + Str(a(i)) + Space(2)Next iEnd SubPrivate Sub Command2_Click()Dim num As Integer, i As Integernum = InputBox("请输入待查找的数")For i = 1 To 10If a(i) = num ThenText2.Text=Str(num)+"是数组中的第"+Str(i)+"个值"Exit ForEnd IfNext iIf i > 10 ThenText2.Text = Str(num) + "不存在于数组中"End IfEnd Sub实验5.2 选手得分Private Sub Command1_Click()Dim k As Integer, s As Single, a As Single, b As Single a = Val(Text1(0).Text)s = ab = aFor k=1 to 5s = s + Val(Text1(k).Text)If a < Val(Text1(k).Text) Thena = Val(Text1(k).Text)End IfIf b > Val(Text1(k).Text) Thenb = Val(Text1(k).Text)End IfNext ks = (s - a - b) / 4s = s * 3 * Val(Text2.Text)Text3.Text = Int(s * 100) / 100End Sub实验5.3 统计Option Base 1Dim a(20) As Integer, b(20) As IntegerPrivate Sub Cmd1_Click()Text1.Text = "": Text2.Text = "": Text3.Text = ""For i = 1 To 20a(i) = Fix(Rnd * 9 + 1)b(i) = 1Text1.Text = Text1.Text + Str(a(i)) + Space(2)Next iEnd SubPrivate Sub Cmd2_Click()fmax = 0For i = 1 To 20For j = i + 1 To 20If a(i) = a(j) Thenb(i) = b(i) + 1End IfNext jIf b(i) > fmax Then fmax = b(i)Next iFor i = 1 To 20If b(i) = fmax ThenText2.Text = Text2.Text + Str(a(i)) + Space(2) End IfNext iText3.Text = fmaxEnd SubPrivate Sub Cmd3_Click()EndEnd Sub实验5.4 循环显示Dim arrPrivate Sub Form_Load()arr = Array("第一项", "第二项", "第三项", "第四项") Label1.Caption = arr(0)Timer1.Interval = 1000Timer1.Enabled = TrueEnd SubPrivate Sub Timer1_Timer()Static i As IntegerLabel1.Caption = arr(i)If i = 3 Theni = 0Elsei = i + 1End IfEnd Sub实验5.5 最大值Private Sub Command1_Click()Dim arrN(30) As IntegerDim Max As IntegerRandomizeFor i = 1 To 30arrN(i) = Int(Rnd * 999) + 1Next iMax = arrN(1)For i = 2 To 30If arrN(i) > Max ThenMax = arrN(i)End IfNext iPrint MaxEnd Sub实验5.6 素数Option ExplicitOption Base 1Private Sub Command1_Click()Dim a() As Integer, n As Integer, i As IntegerDim flag As Boolean, k As Integerk = 0For n = 2 To 100flag = TrueFor i = 2 To n - 1If n Mod i = 0 Thenflag = FalseExit ForEnd IfNext iIf flag = True Thenk = k + 1ReDim Preserve a(k)a(k) = nEnd IfNext nFor i = 1 To UBound(a)Print Right(Space(3) & a(i), 4);If i Mod 5 = 0 Then PrintNext iEnd Sub实验5.7 加密Private Sub Command1_Click()Dim n As Integer, k As Integer, m As IntegerDim c As String, a As StringFor k = 0 To 2If Op1(k).Value Thenn = Val(Op1(k).Caption)End IfNext km = Len(Text1.Text)a = ""For k = 1 To mc = Mid$(Text1.Text, k, 1)c = String(1, Asc(c) + n)If c > "z" Or c > "Z" And c < "a" Thenc = String(1, Asc(c) - 26)End Ifa = a + cNext kText2.Text = aEnd Sub1.6 子程序过程与函数过程实验6.1 求和2.程序代码Private Sub Command1_Click()Dim i As IntegerFor i = 0 To 1If Option1.Item(i) = True ThenCall calc(i)Label2.Caption = Option1(i).CaptionEnd IfNextEnd SubPrivate Sub calc(c As Integer)Dim i As Integerresult = 0x = Val(Text1.Text)If c = 0 ThenFor i = 1 To xIf i Mod 2 = 1 Thenresult = result + iEnd IfNextElseFor i = 1 To xIf i Mod 2 = 0 Thenresult = result + iEnd IfNextEnd IfLabel3.Caption = resultEnd Sub实验6.2 最大值2.程序代码Option Base 1Private Function FindMax(a() As Integer)Dim Start As IntegerDim Finish As Integer, i As IntegerStart = LBound(a)Finish = UBound(a)Max = a(Start)For i = Start To FinishIf a(i) > Max Then Max = a(i)Next iFindMax = MaxEnd FunctionPrivate Sub Command1_Click()Dim arr1Dim arr2(4) As Integerarr1 = Array(Val(Text1), Val(Text2), Val(Text3), Val(Text4)) For i = 1 To 4arr2(i) = CInt(arr1(i))Next iM = FindMax(arr2())Print "最大值是: "; MEnd Sub实验6.3 哥德巴赫猜想2.程序代码Private Function IsPrime(ByVal x As Integer) As BooleanDim i As IntegerFor i = 2 To Sqr(x)If x Mod i = 0 ThenIsPrime = FalseExit FunctionEnd IfNextIsPrime = TrueEnd FunctionPrivate Sub Command1_Click()'学生编写程序开始'======================================x = Val(Text1.Text)If x < 4 Or x Mod 2 <> 0 ThenText1.Text = "输入有误"ElseFor i = 2 To xIf IsPrime(i) And IsPrime(x - i) ThenLabel1.Caption = iLabel2.Caption = x - iExit ForEnd IfNext iEnd If'========================================='学生编写程序结束Open App.Path & "\out3.dat" For Output As #1Print #1, Text1.Text, Label1.Caption, Label2.CaptionClose #1End Sub实验6.4 阶乘和2.程序代码Private Sub Command1_Click()Dim m As Integer, n As IntegerDim s As Long, i As Integerm = Val(Text1.Text)n = Val(Text2.Text)s = 0For i = m To nt = f(i)s = s + tNextlblResult.Caption = sEnd SubPrivate Function f(ByRef x As Integer) As LongDim t As Longt = 1For i = 1 To xt = t * iNextf = tEnd Function实验6.5 选择图形2.程序代码Private Sub C1_Click()Dim k As IntegerFor k = 0 To 2If Op1(k).Value = True ThenCall draw(k)End IfNext kEnd SubSub draw(a As Integer)P1.Print "选择了" & Op1(a).CaptionEnd Sub实验6.6 对象参数2.程序代码Private Sub Form_Load()Label1.Caption = "AABB"Label2.Caption = 10End SubPrivate Sub Command1_Click()Dim a As Integera = Val(Label2.Caption)Call fun1(Label1, a)Label2.Caption = aCall fun2(Form1)End SubPrivate Sub fun1(L As Label, b As Integer) L.Caption = "ABCD"b = b * bEnd SubPrivate Sub fun2(F As Form)F.Caption = "程序"End Sub1.7 简单应用实验7.1 图形控件2.程序代码Dim left0 As IntegerConst blue_color = &HFF0000, red_color = &HFF&Private Sub Command1_Click()Timer1.Enabled = TrueEnd SubPrivate Sub Command2_Click()Timer1.Enabled = FalseEnd SubPrivate Sub Form_Load()left0 = Shape1.LeftEnd SubPrivate Sub Timer1_Timer()If Shape1.FillColor = blue_color ThenIf Shape1.Left > 0 ThenShape1.Height = Shape1.Height + 100Shape1.Width = Shape1.Width + 100Shape1.Left = Shape1.Left - 50Shape1.Top = Shape1.Top - 50ElseShape1.FillColor = red_colorEnd IfEnd IfIf Shape1.FillColor = red_color ThenIf Shape1.Left < left0 ThenShape1.Height = Shape1.Height - 100Shape1.Width = Shape1.Width - 100Shape1.Left = Shape1.Left + 50Shape1.Top = Shape1.Top + 50ElseShape1.FillColor = blue_colorEnd IfEnd IfEnd Sub实验7.2 Line控件2.完善程序代码Private Sub Command1_Click()Line4.Visible = TrueEnd SubPrivate Sub Command2_Click()Line4.Visible = FalseEnd Sub实验7.3 计数2.程序代码Private Sub C1_Click(Index As Integer)Select Case IndexCase 1Timer1.Enabled = FalseCase 0Timer1.Enabled = TrueEnd SelectEnd SubPrivate Sub Timer1_Timer()Text1.Text = Text1.Text + 1End Sub实验7.4 通话费用2.程序代码Private Sub Cmd1_Click()Text1(0).Text = Str(Time())Text1(1).Text = "": Text1(2).Text = ""Cmd1.Enabled = FalseCmd2.Enabled = TrueEnd SubPrivate Sub Cmd2_Click()Text1(1).Text = Str(Time())t_start = Hour(Text1(0).Text) * 3600 + Minute(Text1(0).Text) * 60 + Second(Text1(0).Text) t_end = Hour(Text1(1).Text) * 3600 + Minute(Text1(1).Text) * 60 + Second(Text1(1).Text) t = t_end - t_startm = t \ 60If m < t / 60 Then m = m + 1s = 0.5If m - 3 > 0 Thens = s + (m - 3) * 0.15End IfText1(2).Text = Str(s) + "元"Cmd1.Enabled = TrueCmd2.Enabled = FalseEnd Sub实验7.5 图标运动2.程序代码Dim a, t, dPrivate Sub Command1_Click()Timer1.Enabled = Trued = Image1.TopEnd SubPrivate Sub Command2_Click()Open App.Path & "\out7.txt" For Output As #1Print #1, Label1, Label2Close #1End SubPrivate Sub Form_Load()a = 1t = 0End SubPrivate Sub Timer1_Timer()Image1.Top = Image1.Top - a * 50If Image1.Top + Image1.Height <= Image2.Top + Image2.Height - 200 Then Timer1.Enabled = Falsed = d - Image1.TopLabel1 = dLabel2 = t * Timer1.Interval / 1000End Ifa = a + 0.1t = t + 1End Sub实验7.6 圆的移动2.程序代码Private Sub Form_load()HScroll1.Min = Shape2.LeftHScroll1.Max = Shape2.Width + Shape2.Left - Shape1.WidthVScroll1.Min = Shape2.TopVScroll1.Max = Shape2.Height + Shape2.Top - Shape1.HeightHScroll1.Value = 1000VScroll1.Value = 1000End SubPrivate Sub HScroll1_Change()Shape1.Left = HScroll1.ValueEnd SubPrivate Sub VScroll1_Change()Shape1.Top = VScroll1.ValueEnd Sub实验7.7 处理数据2.程序代码Private Sub Command1_Click()Dim y As IntegerFor i = 0 To 2If Option1(i).Value = True Theny = Val(Option1(i).Caption)End IfNextCall calc(y)End SubPrivate Sub calc(y As Integer)List1.Cleari = 1x = Val(Text1.Text) + 1Do While i <= 5If x Mod y = 0 ThenList1.AddItem x i = i + 1End Ifx = x + 1LoopEnd Sub1.8 菜单、键盘与鼠标事件实验8.1 下拉式菜单2.完善程序代码Private Sub Dis_Click()Text1.Text = "等级考试"End SubPrivate Sub Exit_Click()EndEnd Sub实验8.2 求和或求阶乘2.程序代码Dim n As IntegerPrivate Sub Command1_Click()'需学生编写的程序Dim s As Long, i As IntegerIf Option1 Thens = 1For i = 1 To ns = s * iNext iElses = 0For i = 1 To ns = s + iNext iEnd IfText1.Text = CStr(s)End SubPrivate Sub Command2_Click()Open App.Path + "\out2.dat" For Output As #1Print #1, n, Option1.Value, Option2.Value, Text1Close #1End SubPrivate Sub m10_Click()n = 10End SubPrivate Sub m2000_Click()n = 2000End SubPrivate Sub m12_Click()n = 12End SubPrivate Sub m1000_Click()n = 1000End SubPrivate Sub Option1_Click()n = 0m1000.Enabled = Falsem2000.Enabled = Falsem10.Enabled = Truem12.Enabled = TrueEnd SubPrivate Sub Option2_Click()n = 0m10.Enabled = Falsem12.Enabled = Falsem1000.Enabled = Truem2000.Enabled = TrueEnd Sub实验8.3 弹出式菜单2.完善程序代码Private Sub Form_Load()Text1.Text = "计算机等级考试"End SubPrivate Sub M1_Click()Text1.FontBold = TrueEnd SubPrivate Sub M2_Click()Text1.FontItalic = TrueEnd SubPrivate Sub M3_Click()Text1.FontUnderline = TrueEnd SubPrivate Sub Text1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 2 Then PopupMenu FormatEnd Sub实验8.4 组合框的使用2.程序代码Private Sub C1_Click()Dim flag As BooleanFor i = 0 To Cb1.ListCount - 1If Cb1.List(i) = Cb1.Text Thenflag = TrueExit ForElseflag = FalseEnd IfNextIf flag ThenMsgBox "已有此项"Cb1.Text = ""ElseCb1.AddItem Cb1.TextEnd IfEnd Sub实验8.5 键盘事件2.程序代码Private Sub Command1_Click()Combo1.AddItem Text1.TextText1.Text = ""End SubPrivate Sub Text1_KeyPress(KeyAscii As Integer)If KeyAscii > 57 Or KeyAscii < 48 ThenMsgBox "请输入数字!"KeyAscii = 0End IfEnd Sub实验8.6 鼠标事件2.程序代码Const y0& = 1110, x0& = 1100, radius& = 750Private Function oncircle(X As Single, Y As Single) As Booleanprecision = 55000If Abs((X - x0) * (X - x0) + (y0 - Y) * (y0 - Y) - radius * radius) < precision Then oncircle = TrueElseoncircle = FalseEnd IfEnd FunctionPrivate Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) Const LEFT_BUTTON = 1If oncircle(X, Y) ThenLine1.X1 = x0Line1.Y1 = y0If Button = LEFT_BUTTON ThenLine1.X2 = XLine1.Y2 = YElseLine1.X2 = Line1.X1Line1.Y2 = y0 - radiusEnd IfLabel1.Caption = ""ElseLabel1.Caption = "鼠标位置不对"End IfEnd Sub实验8.7 多窗体程序设计2.程序代码(1)Form1窗体中的程序代码Private Sub C1_Click()Dim k As IntegerForm2.ShowForm2.Print Form1.L1.Caption; Form1.Text1 Form2.Print Form1.L2.Caption; Form1.Text2 Form2.Print Form1.L3.Caption; Form1.Text3 Form2.Print Form1.Frame1.Caption; ":"; For k = 0 To 1If Form1.Op1(k).Value ThenForm2.Print Form1.Op1(k).Caption End IfNext kEnd SubPrivate Sub Form_Load()Text2.PasswordChar = "*"End Sub(2)Form2窗体中的程序代码Private Sub C1_Click()EndEnd SubPrivate Sub C2_Click()Unload Form2End Sub1.9 通用对话框与文件实验9.1 通用对话框2.程序代码Private Sub Command1_Click()Dim n As LongCD1.FileName = ""CD1.Filter = "所有文件|*.*|文本文件|*.txt|Word文档|*.doc"CD1.FilterIndex = 2CD1.ShowOpenIf CD1.FileName <> "" ThenOpen CD1.FileName For Input As #1n = LOF(1)Text1 = Input$(n, #1)Close #1End IfEnd Sub实验9.2 文件控件2.完善程序代码Private Sub Dir1_Change()File1.Path = Dir1.PathEnd SubPrivate Sub Drive1_Change()Dir1.Path = Drive1.DriveEnd SubPrivate Sub File1_Click()Label2.Caption = File1.FileNameEnd Sub实验9.3 小写转换为大写2.程序代码Private Sub C1_Click()Dim a As StringCD1.Filter = "所有文件|*.*|文本文件|*.txt|Word文件|*.doc"CD1.FilterIndex = 2CD1.Action = 1Open CD1.FileName For Input As #1Input #1, aClose #1Text1.Text = aEnd SubPrivate Sub C2_Click()Text1.Text = UCase(Text1.Text)End SubPrivate Sub C3_Click()CD1.FileName = "out3.txt"CD1.Action = 2Open CD1.FileName For Output As #1Print #1, Text1.TextClose #1End Sub实验9.4 删除数据2.程序代码Dim a(100) As Integer, num As Integer, n As IntegerPrivate Sub Command1_Click()Dim k As Integern = 60Open App.Path & "\in4.txt" For Input As #1For k = 1 To nInput #1, a(k)Text1 = Text1 + Str(a(k)) + Space(2)Next kClose #1End SubPrivate Sub Command2_Click()num = InputBox("请输入一个数")End SubPrivate Sub Command3_Click()For i = 1 To nIf num = a(i) Then Exit ForNext iIf i > n ThenMsgBox "该数不存在于数组中,不能执行删除操作!"Elsen = n - 1For j = i To na(j) = a(j + 1)NextEnd IfText1 = ""'以下程序段将执行删除操作后的数组a重新显示在Text1中For k = 1 To nText1 = Text1 + Str(a(k)) + Space(2)Next kEnd Sub实验9.5 统计2.程序代码Option Base 1Dim x As String, max_n As IntegerPrivate Sub Command1_Click()Open App.Path & "\in5.txt" For Input As #1s = Input(LOF(1), #1)Close #1Text1.Text = sEnd SubPrivate Sub Command2_Click()Dim a(26) As Integersl = Text1.SelLengthst = Text1.SelTextText2 = ""If sl = 0 ThenMsgBox "请先选择文本"ElseFor i = 1 To slc = Mid(st, i, 1)If c <> " " Thenn = Asc(UCase(c)) - Asc("A") + 1a(n) = a(n) + 1End IfNext imax_n = a(1): n = 1For j = 2 To 26If max_n < a(j) Thenmax_n = a(j)End IfNext j'注意可能有多个出现次数最多的字母For i = 1 To 26If max_n = a(i) ThenText2.Text = Text2.Text + " " + Chr(Asc("A") + i - 1) End IfNext iEnd IfEnd Sub实验9.6 完全平方数2.程序代码Dim a(100) As IntegerPrivate Sub Command1_Click()Dim k As IntegerOpen App.Path & "\in6.txt" For Input As #1For k = 1 To 100Input #1, a(k)Next kClose #1End SubPrivate Sub Command2_Click()'学生编写Dim i As Integer, avg As Single, N As IntegerFor i = 1 To 100If a(i) = (Int(Sqr(a(i)))) ^ 2 Thenavg = avg + a(i)N = N + 1End IfNext iavg = Int(avg / N)Text1.Text = CStr(avg)End SubPrivate Sub Form_Unload(Cancel As Integer)Open App.Path & "\out6.txt" For Output As #1 Print #1, Text1.TextClose #1End Sub1.10 综合应用实验10.1 大小写转换2.程序代码Private Sub Command1_Click()Dim s As StringCommonDialog1.Filter = "所有文件|*.*|文本文件|*.txt"CommonDialog1.FilterIndex = 2On Error GoTo openerrCommonDialog1.InitDir = App.PathCommonDialog1.ShowOpenOpen CommonDialog1.FileName For Input As #1Input #1, sClose #1Text1.Text = sopenerr:End SubPrivate Sub Command2_Click()'考生需要编写的程序x = Text1.Texty = Len(x)For i = 1 To yz = Mid(x, i, 1)Select Case zCase "E"Mid(x, i, 1) = "e"Case "N"Mid(x, i, 1) = "n"Case "T"Mid(x, i, 1) = "t"Case "e"Mid(x, i, 1) = "E"Case "n"Mid(x, i, 1) = "N"Case "t"Mid(x, i, 1) = "T"End SelectNext iText1.Text = xEnd SubPrivate Sub Command3_Click()CommonDialog1.Filter = "文本文件|*.txt|所有文件|*.*"CommonDialog1.FilterIndex = 1On Error GoTo openerrCommonDialog1.FileName = "out1.txt"CommonDialog1.InitDir = App.PathCommonDialog1.Action = 2Open CommonDialog1.FileName For Output As #1Print #1, Text1Close #1openerr:End Sub实验10.2 矩阵与文件2.程序代码Option Base 1Private Sub Form_Click()Const N = 5Const M = 5Dim mat(M, N)Dim i, j, tOpen App.Path & "\" & "in2.txt" For Input As #1For i = 1 To NFor j = 1 To MInput #1, mat(i, j)Next jNext iClose #1PrintPrint "初始矩阵为:"PrintFor i = 1 To NFor j = 1 To MPrint Tab(5 * j); mat(i, j);Next jPrintNext iPrintFor j = 1 To Mt = mat(1, j)mat(1, j) = mat(3, j)mat(3, j) = tNext jPrintPrint "交换第一行和第三行后的矩阵为:"PrintFor i = 1 To NFor j = 1 To MPrint Tab(5 * j); mat(i, j);Next jPrintNext iEnd Sub实验10.3 菜单与文件2.程序代码Option Base 1Dim Arr(100) As Integer,s As IntegerSub ReadData()Open App.Path & "\" & "in3.txt" For Input As #1For i = 1 To 100Input #1, Arr(i)Next iClose #1End SubSub WriteData(Filename As String, Num As Integer)Open App.Path & "\" & Filename For Output As #1Print #1, NumClose #1End SubPrivate Sub Calc_Click()Dim i As IntegerFor i = 1 To 100If Arr(i) < 50 Thens = s + Arr(i)Text1.Text = Text1.Text + CStr(Arr(i)) + " "End IfNext iPrint sEnd SubPrivate Sub read_Click()ReadDataEnd SubPrivate Sub save_Click()WriteData "out3.txt", sEnd Sub实验10.4 排序2.程序代码Private Sub Command1_Click()RandomizeFor k = 0 To 9Text1(k) = CInt(Rnd() * 899 + 100)NextEnd SubPrivate Sub Command2_Click()'================================================'算法:'1)令i指向第1个数,j指向最后1个数,并先暂存最后一个数;'2)检查第i个数是否为偶数,若不是,再检查下一个,直到第i个是' 偶数,则把此偶数放到第j个位置,j向前移1个位置;'3)检查第j个数是否为奇数,若不是,再检查前一个,直到第j个是' 奇数,则把此奇数放到第i个位置,i向后移1个位置;'4)重复2)、3),直到i=j'5)把开始暂存的数放到i的位置'=================================================Dim i%, j%, temp%, flag As Booleani = 0j = 9temp = Text1(j)flag = TrueWhile (i < j)If flag ThenIf Text1(i) Mod 2 = 0 ThenText1(j) = Text1(i)j = j - 1flag = Not flagElsei = i + 1End IfElseIf Text1(j) Mod 2 = 1 ThenText1(i) = Text1(j)i = i + 1flag = Not flagElsej = j - 1End IfEnd IfWendText1(i) = tempEnd Sub实验10.5 插入数据2.程序代码Dim a(100) As Integer, num As IntegerPrivate Sub Command1_Click()Dim k As IntegerOpen App.Path & "\in5.txt" For Input As #1For k = 1 To 60Input #1, a(k)Text1 = Text1 + Str(a(k)) + Space(2)Next kClose #1End SubPrivate Sub Command2_Click()num = InputBox("请输入一个数")End SubPrivate Sub Command3_Click()For i = 1 To 60If num < a(i) Then Exit ForNext iFor j = 60 To i Step -1a(j + 1) = a(j)Next ja(i) = numText1 = ""'以下程序段将插入后的数组A重新显示在Text1中For k = 1 To 61Text1 = Text1 + Str(a(k)) + Space(2)Next kEnd Sub实验10.6 图形2.程序代码Dim a(5, 10) As IntegerDim s(5)Private Sub Command1_Click()Open App.Path & "\in6.txt" For Input As #1For i = 1 To 5For j = 1 To 10Input #1, a(i, j)Next jNext iClose #1End SubPrivate Sub Command2_Click()For i = 1 To 5s(i) = 0For j = 1 To 10s(i) = s(i) + a(i, j)Next js(i) = CInt(s(i) / 10)Text1(i - 1) = s(i)Next iEnd SubPrivate Sub Command3_Click()For k = 1 To 5Shape1(k - 1).Height = s(k) * 20m = Line2.Y1Shape1(k - 1).Top = m - Shape1(k - 1).HeightShape1(k - 1).Visible = TrueNext kEnd Sub。
vb实验报告实验一

vb实验报告实验一VB实验报告实验一引言:Visual Basic(VB)是一种基于事件驱动的编程语言,广泛应用于Windows操作系统的软件开发。
本实验旨在通过实际操作,了解VB的基本语法和开发环境,并通过一个简单的案例来展示VB的应用。
一、实验目的本实验的主要目的是让学生熟悉VB的开发环境和基本语法,并通过一个简单的案例来加深对VB的理解和应用。
二、实验内容本实验的主要内容包括:1. VB开发环境的安装与配置;2. VB的基本语法和控件的使用;3. 通过一个简单的案例来展示VB的应用。
三、实验步骤1. 安装VB开发环境:根据教材提供的安装包,按照步骤进行安装,并进行必要的配置。
2. 创建新项目:打开VB开发环境,点击“新建项目”,选择Windows应用程序,并设置项目名称和保存路径。
3. 设计界面:在VB的设计界面中,通过拖拽控件的方式,设计出所需的界面布局,并设置控件的属性。
4. 编写代码:在VB的代码编辑器中,编写相应的代码,实现界面与功能的交互。
5. 调试运行:点击“调试”菜单中的“开始调试”选项,运行程序,并检查是否达到预期效果。
6. 保存项目:在调试运行成功后,及时保存项目并进行备份。
四、实验案例本实验以一个简单的学生成绩管理系统为例,通过VB实现以下功能:1. 学生信息录入:通过输入学生的姓名、学号、成绩等信息,将其保存到数据库中。
2. 学生信息查询:根据学号或姓名等关键字,从数据库中查询学生的信息,并在界面中显示出来。
3. 学生成绩统计:根据数据库中保存的学生信息,计算出平均成绩、最高分和最低分,并在界面中显示出来。
实验结果:经过以上步骤的实验操作,我们成功地实现了一个简单的学生成绩管理系统。
通过该系统,我们可以方便地录入、查询和统计学生的成绩信息。
实验总结:通过本次实验,我们深入了解了VB的开发环境和基本语法,并通过一个简单的案例来加深对VB的理解和应用。
通过实际操作,我们掌握了VB开发的基本流程,提高了编程能力和解决问题的能力。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
本科实验报告
课程名称:人机界面程序设计基础
实验项目:一、VB环境和可视化编程基础实验地点:
专业班级:学号:
学生姓名:
指导教师:李何
年月日
一、实验目的和要求
1、掌握启动与退出Visual Basic的方法。
2、掌握建立、编辑和运行一个简单的Visual Basic应用程序的全过程。
3、掌握定义变量、常量的方法;了解运算符和表达式的使用;熟悉内部函数。
4、掌握基本控件的应用。
二、实验内容和原理
1、编写一程序,在文本框中统计在该窗口上鼠标单击的次数。
提示:使用Form_Click事件;文本框计数Text1=Val(Text1)+1。
2、使用Print方法,掌握“,”和“;”的区别;以及Spc(n)函数、Tab(n)函数、属性Current X和Current Y的定位输出。
3、编写一程序,在标签上实时显示系统时间,系统时间要求00:00:00AM/PM格式
提示:使用Timer控件、Format函数和Now函数。
4、对教材上例4-13进行改动,用输入框函数完成输入,用消息框函数显示结果。
5、使用Len()函数、LenB()函数、Rnd函数和Randomize语句、Shell函数,并对运行结果进行分析。
三、主要仪器设备
计算机
四、实验步骤
1、编写一程序,在文本框中统计在该窗口上鼠标单击的次数。
提示:使用Form_Click事件;文本框计数Text1=Val(Text1)+1。
打开VB软件,建立标准exe,在窗体设计器中添加Command1,更名为“按钮”
添加text1,删掉名称。
双击按钮,编写程序如图
然后运行程序,每按一次按钮,text1中的数字加1.
保存工程。
2、使用Print方法,掌握“,”和“;”的区别;以及Spc (n)函数、Tab(n)函数、属性Current X和Current Y的定位输出。
3、编写一程序,在标签上实时显示系统时间,系统时间要求00:00:00AM/PM格式
提示:使用Timer控件、Format函数和Now函数。
4、对教材上例4-13进行改动,用输入框函数完成输入,用消息框函数显示结果。
5、使用Len()函数、LenB()函数、Rnd函数和Randomize语句、Shell函数,并对运行结果进行分析。
五、实验结果与分析(必填)。