《4453998918vb程序设计实验报告.doc》由会员分享,可在线阅读,更多相关《4453998918vb程序设计实验报告.doc(11页珍藏版)》请在三一办公上搜索。
1、VB程序设计实验报告实验三 选择结构程序设计一、实验目的1. 掌握逻辑表达式的正确书写形式。2. 掌握单分支与双分支条件语句的使用。3. 掌握多分支条件语句的使用。4. 掌握情况语句的使用及与多分支条件语句的区别。二实验内容4. 编制程序,计算某个学生奖学金的等级(假定只考虑一等奖),以三门功课成绩m1,m2,m3为评奖依据。奖学金一等奖评定标准如下: (1) 平均分大于95分者。(2) 有两门成绩是100分,且第三门功课成绩不低于80分者。5. 编一模拟袖珍计算器的完整程序,界面如图2.3.1所示。要求:输入两个操作数和一个操作符,根据操作符决定所做的运算。6输入一个数字(17),用英文显示
2、对应的星期一星期日。提示:用Select语句来实现。三实验步骤4,打开VB后,建立一个命令按钮,输入奖学金评定,编辑代码如下:Private Sub command1_Click() Dim m1!, m2!, m3! m1 = InputBox(输入m1 的值) m2 = InputBox(输入m2 的值) m3 = InputBox(输入m3 的值) If (m1 + m2 + m3) / 3 95 Or _ (m1 = 100 And m2 = 100 And m3 = 85 Or _ m1 = 100 And m3 = 100 And m2 = 85 Or _ m3 = 100 And
3、 m2 = 100 And m1 = 85) Then MsgBox 一等奖学金 Else MsgBox 不是一等奖学金 End IfEnd Sub5,打开VB后,建立4个Lebel标签,4个Text文本框,2个Command按钮,如上图。编辑代码如下:Private Sub Command1_Click()Select Case Trim(Text3)Case +Text4.Text = Val(Text1.Text) + Val(Text2.Text)Case -Text4.Text = Val(Text1.Text) - Val(Text2.Text)Case *Text4.Text =
4、 Val(Text1.Text) * Val(Text2.Text)Case /Text4.Text = Val(Text1.Text) / Val(Text2.Text)End SelectEnd SubPrivate Sub Command2_Click()EndEnd Sub6, 打开VB后,建立1个Text文本框,1个Command按钮。代码如下:Private Sub Command1_Click()a = Text1.TextSelect Case aCase 1Print MondayCase 2Print TuesdayCase 3Print WednesdayCase 4Pr
5、int ThursdayCase 5Print FridayCase 6Print SaturdayCase 7Print SundayEnd SelectEnd Sub四实验总结1,从此此实验中掌握了IF语句的使用.掌握情况语句的使用,以及情况语句与多分支语句的使用区别.2,写在不同行的条件代码要用空格加下划线分开,有关m1,m2,m3的三个条件要用AND隔开3,使用Select语句时,Case后的条件是字符型。实验四 循环结构程序设计一实验目的1. 掌握For语句的使用。2. 掌握Do语句的各种形式的使用。3. 掌握如何控制循环条件,防止死循环或不循环。二实验内容3用单循环显示有规律图形,
6、如图4.1。提示: (1)循环体内显示用String函数来实现,找出循环控制变量与String函数内个数的关系,即:String(i,Trim(Str(i)。(2)Trim函数是去除字符串两边的空格。因为将数值i转换成字符,系统自动在数字前加符号位,正数为空格,负数为“-”;而String函数只取字符串中的第一个字符,本例中为空格,因此要利用Trim函数去除空格。(3)为了使得最后一行的0显示,如按照上面公式为1,则要对公式修改为: String(i,Right( (Str(i),1) 图4.1 实验4.3运行界面之一4计算K+=2912211611117141211S当第i项的值10-4时结
7、束。提示:找出规律,第i项的分母是前一项的分母加上表示有分母项开始的计数项8求Sn=a+aa+aaa+aaa+aaaaa(n个a),其中a是一个由随机数产生的19(包括1,9)中的一个正整数,n是一个由随机数产生的510(包括5,10)中的一个数。例如:当a=2,n=5时,Sn=2+22+222+2222+22222。提示:为了得到不断重复的数Temp,可在循环体利用下面通项: Temp=Temp*10+a Temp的初值为0。三实验步骤3,打开VB,程序代码如下:Private Sub Form_Click()For i = 1 To 10Print Spc(10 - i);If i 10
8、Then Print String(i * 2 - 1, Trim(Str(i);If i = 10 Then Print String(i * 2 - 1, Right(Str(i), 1):PrintNext iEnd Sub4,打开VB,程序代码如下:Private Sub Form_Click()a = 0b = 1s = 0Dob = b + as = s + 1 / ba = a + 1Loop Until 1 / b 0.0001Print sEnd Sub8,打开VB,程序代码如下:Private Sub Form_Click()a = Int(Rnd * 9 + 1)n =
9、Int(Rnd * 6 + 5)temp = 0s = 0For i = 1 To ntemp = temp * 10 + as = s + tempNext iPrint sEnd Sub四实验总结1,从此次实验中得到的是掌握了FOR语句的使用,还有的是DO语句的各种形式的使用,如何控制循环和防止死循环或不循环。2,学会了String函数的用法。实验五 数 组一实验目的1. 掌握数组的声明、数组元素的引用。2. 掌握静态数组和动态数组的使用差别。3. 应用数组解决与数组有关的常用算法。二实验内容3随机产生10个30100(包括30,100)的正整数,求最大值、最小值、平均值,并显示整个数组的
10、值和结果。4用起泡法对10个数进行从大到小排序,可以参考教材中的【例3-22】。6编一对已知数组a(),删除数组中数组元素中某个元素的程序。假定数组a的值利用Array函数,分别为1,6,8,3,5,9,10,2,7,4,删除Key值为10的元素。三实验步骤3,打开VB,建立1个Command按钮,程序代码如下:Private Sub Command1_Click()Dim a(10)RandomizeDim sum As Integer, min As Integer, max As Integersum = 0: min = 100: max = 30For i = 0 To 9a(i)
11、= Int(30 + (71 * Rnd)sum = sum + a(i)If a(i) max Then max = a(i)Print a(i);Next iPrintPrint 最大值:; maxPrint 最小值:; minPrint 平均值:; sum / 10End Sub4,打开VB,建立1个Command按钮,程序代码如下:Private Sub Command1_Click()Dim a(1 To 10) As IntegerRandomizePrint 排序前:;For i = 1 To 10a(i) = Int(Rnd * 100)Print a(i);Next iFor
12、 i = 1 To 10For j = i + 1 To 10If a(i) a(j) Thent = a(i): a(i) = a(j): a(j) = tEnd IfNext jNext iPrintPrint 排序后:;For i = 1 To 10Print a(i);Next iEnd Sub6,打开VB,程序代码如下:Private Sub Form_Click()Dim a()aa = Array(1, 6, 8, 3, 5, 9, 10, 2, 7, 4)ReDim a(9)For i = 0 To 9If a(i) = 10 Then t = a(i): a(i) = a(9
13、): a(9) = tNextReDim a(8)Print aaEnd Sub调试过程:实时错误”13”,类型不匹配四实验总结1,学会了静态数组和动态数组的运用。2,对于Array函数的添加元素和删除元素的掌握还有一定的问题,上面的6题不会做。实验七一实验目的 1. 掌握常用控件的重要属性、事件和方法。2. 掌握常用ActiveX控件的特性,熟练应用这些高级控件进行编程。3. 初步掌握创建基于图形用户界面应用程序的过程。4. 熟练掌握键盘事件、鼠标事件及其事件过程的编写技艺。5. 掌握普通拖放和OLE拖放的原理,掌握实现拖放的方法。二实验内容1调试教材中的【例4-7】,体会基本控件的使用方法
14、。2调试教材中的【例4-8】,体会基本控件的使用方法。3设计一个如图7.1所示程序。当用户在“操作选项”框架中选定操作后,文本框发生相应的变化,同时在“操作说明”框架中的标签上显示有关的操作说明。图7.1提示: (1) 在文本框中移动光标和选定内容是通过设置SelStart和SelLength属性实现的。(2) 文本框中内容分行显示是因为插入了回车换行符。回车符的ASCII码值为13,其符号常数为vbCr;换行符的ASCII码值为10,其符号常数为vbLf。(3) 把光标移动到第三行的开始,实质是确定文本中第二行后vbCr或vbLf的位置。选定文本中的第三行,关键是确定第三行前后vbCr或vb
15、Lf的位置。三实验步骤1, 打开VB,创建如下界面:程序代码为:Private Sub Command1_Click()List1.AddItem Text2.TextText3 = List1.ListCountEnd SubPrivate Sub Command2_Click()List1.RemoveItem List1.ListIndexText3 = List1.ListCountEnd SubPrivate Sub Command3_Click()List1.ClearText3 = List1.ListCountEnd SubPrivate Sub Command4_Click(
16、)EndEnd SubPrivate Sub Form_Load()With List1 .AddItem 北京市 .AddItem 上海市 .AddItem 天津市 .AddItem 江苏省 .AddItem 河北省 .AddItem 山东省 .AddItem 安徽省End WithText3 = List1.ListCountEnd SubPrivate Sub List1_Click()Text1 = List1.List(List1.ListIndex)End SubPrivate Sub Text1_Change()End Sub2, 打开VB,创建如下界面:程序代码为:Privat
17、e Sub Command1_Click() Text3 = 学号: & Text1 & Chr(13) + Chr(10) Text3 = Text3 & 姓名: & Text2 & Chr(13) + Chr(10) If Option1.Value = True Then Text3 = Text3 & 性别: & 男 & Chr(13) + Chr(10) Else Text3 = Text3 & 性别: & 女 & Chr(13) + Chr(10) End If Text3 = Text3 & 籍贯: & List1.Text & Chr(13) + Chr(10) Text3 =
18、 Text3 & 系别: & Combo1.Text & Chr(13) + Chr(10)End Sub3, 打开VB,创建如下界面:程序代码为:Private Sub Form_Load()Text1.Text = 清明时节雨纷纷, & Chr(13) + Chr(10) & 路上行人欲断魂; & Chr(13) + Chr(10) & 借问酒家何处有, & Chr(13) + Chr(10) & 牧童遥指杏花村.End SubPrivate Sub Option1_Click()i = 1n = 2Do While n 3If (Mid(Text1.IMEMode, 1) vbLf Th
19、eni = i + 1Elsen = n + 1i = i + 1End IfLoopText1.SelStart = i - 1Text1.SetFocuslabel2.Caption = 光标被移动到文本的开始位置End SubPrivate Sub Option2_Click()i = 1n = 2Do While n 3If (Mid(Text1.IMEMode, 1) vbLf Theni = i + 1Elsen = n + 1i = i + 1End IfLoopText1.SelStart = i - 1Text1.SetFocuslabel2.Caption = 光标被移动到
20、文本的末尾位置End SubPrivate Sub Option3_Click()i = 1n = 2Do While n 3If (Mid(Text1.IMEMode, 1) vbLf Theni = i + 1Elsen = n + 1i = i + 1End IfLoopText1.SelStart = i - 1Text1.SetFocuslabel2.Caption = 光标被移动到文本的第三行的起始位置End Sub四实验总结1, 在此次的实验中掌握了常用控件的重要一些属性、事件和方法。2, 学会了如何用代码设置换行。3, 对于用代码设置移动光标,选定内容的掌握还有困难,需进一步的学习。总结:这几周,我们进行了VB程序设计实习。通过这次实习我们使用到了VB中的一些控件建立界面并按照老师的要求完成了七次上机,其实验报告如上。在其过程中,我们遇到了很多问题和困难,发现在之前的学习中,所学的东西不能完全掌握。这次实习,是我在学习上的一次考验,让我深深体会到了实训操作的重要性。虽然此次实习已结束,但意义很大。它使我了解自己的短处,让我知道要从什么方面对自己进行补充,这对我今后的学习和工作将产生很大的影响。