vb练习.doc

上传人:仙人指路1688 文档编号:3025649 上传时间:2023-03-09 格式:DOC 页数:12 大小:212.50KB
返回 下载 相关 举报
vb练习.doc_第1页
第1页 / 共12页
vb练习.doc_第2页
第2页 / 共12页
vb练习.doc_第3页
第3页 / 共12页
vb练习.doc_第4页
第4页 / 共12页
vb练习.doc_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《vb练习.doc》由会员分享,可在线阅读,更多相关《vb练习.doc(12页珍藏版)》请在三一办公上搜索。

1、第1周1、 在窗体上拖放一个标签控件,然后在form_click事件中声明一个字符串变量str_test(长度为5),试一下当赋给这个变量的字符串大于5的时候,在标签中显示出来的结果是什么。Private Sub Form_Click()Dim a As String * 5a = dddddddddddLabel1.Caption=a2、 根据输入圆的半径长度,计算圆的周长和面积。掌握浮点类型和符号常量的用法,界面自行设计。Dim a As Singlep = 3.1415926a = Val(Text1)Text2 = p * a * aText3 = 2 * p * a3、 创建一个判断

2、输入数字是否闰年的程序,通过这个习题掌握运算符的优先级顺序。闰年的条件符合下面两者之一:(1)能被4整除,但不能被100整除。(2)能被4整除又能被400整除。界面如下:Dim x As Integer, y As Booleanx = Text1y = (xmod4 = 0) And (xmod100 0) Or (xmod4 = 0) And (xmod400 = 0)Text2 = y第5周4、 用户输入直角三角形的两条直角边,计算出斜边的长度。通过这个例子掌握系统自带算术函数val和sqr的用法。注意定义变量时候的数据类型。5、 从字符串中取字符,从界面输入字符串,并取任意位置的字符。

3、界面设计如下,用到的函数val和mid。6、 使用日期和时间函数在窗体上显示系统当前的日期和时间。通过这个习题掌握日期和时间函数的用法,界面如下:7、 按照要求编写程序: 新建一个VB工程,在窗体下方添加一个按钮,按钮的名称为“Command1”,按钮上显示“输入并计算”。在适当的事件过程中编写代码,使得程序运行时,当单击按钮的时候,程序完成如下功能:通过InputBox函数让用户输入4个整数,程序负责计算用户输入的4个数的和与平均值,最后把这4个整数和计算结果都在窗体上打印出来。程序编写完毕后,运行,查看效果。保存为average.vbp和average.frm。Private Sub Co

4、mmand1_Click()Dim a As IntegerDim b As IntegerDim c As IntegerDim d As IntegerDim s As Singlea = InputBox(输入一个整数, 输入整数)b = InputBox(输入一个整数, 输入整数)c = InputBox(输入一个整数, 输入整数)d = InputBox(输入一个整数, 输入整数)s = a + b + c + dAve = s / 4Print a, b, c, dPrint 和Print sPrint 平均值Print AveEnd Sub8、 设计一个程序,有两个变量,为它们生

5、成10-99的随机正整数,然后对调两个变量中的数字。保存为swap.vbp和swap.frm。Private Sub Command1_Click()RandomizeDim a As IntegerDim b As IntegerDim c As Integera = Int(99 - 10 + 1) * Rnd) + 10b = Int(99 - 10 + 1) * Rnd) + 10Print a, bc = aa = bb = cPrint 对调后Print a, bEnd Sub第7周一、功能:每次点击“出题”按钮,随机出1道加法题目,参加运算操作数在1-100之间,用户在textb

6、ox输入答案。点击“确定”按钮,利用msgbox给出输入的答案是正确或错误。需要用到的知识点:ifthenelse结构,Msgbox函数,Randomize,rnd函数,Val函数Private Sub Command1_Click()RandomizeLabel1.Caption = Int(100 - 1 + 1) * Rnd) + 1Label3.Caption = Int(100 - 1 + 1) * Rnd) + 1End SubPrivate Sub Command2_Click()If Val(Text1.Text) = Val(Label1.Caption) + Val(Lab

7、el3.Caption) ThenMsgBox rightElseMsgBox errorEnd IfEnd Sub二、功能:制作一个简单的趣味心理测试小程序,心理测试的题目为下列红色字,把这个内容做成程序(也可以自己设计一个心理测试题目)请你选择答案你的新房子正在装潢,你会在哪一部分花最多的钱?1、客厅的沙发、摆设。2、卧室的床。3、浴室、厨房。选择1: 你天生有致富的命,可惜不太会把握,回想一下自己花钱的态度,别太注意表面功夫,要考虑收支平衡!其实你是财运不差的人,别一直偷懒,放弃可以进财的机会。选择2:你是个高品味的人,天生上流社会的人物,或许目前你的财务状况还谈不上大富大贵,但是你总是

8、口袋快见底时又刚好有适时的补充。你是穷不了的,只是还称不上是大富翁。选择3:你看起来实在不象是会成为大富翁的人,但是人不可貌相,你偏偏是最有机会成为大富翁的人。你的财运很好,做什么工作都赚钱!连你自己都不清楚是怎么变成大富翁的。提示:(1)可以textbox在显示结果,将它的multilines属性设为true可以显示多行文本(2)可以定义3个string变量,存放3种选择的结果分析并根据用户的选择显示在textbox中Private Sub Command1_Click()If Val(Text1) = 1 ThenText2 = 你天生有致富的命,可惜不太会把握,回想一下自己花钱的态度,别

9、太注意表面功夫,要考虑收支平衡!其实你是财运不差的人,别一直偷懒,放弃可以进财的机会。ElseIf Val(Text1) = 2 ThenText2 = 你是个高品味的人,天生上流社会的人物,或许目前你的财务状况还谈不上大富大贵,但是你总是口袋快见底时又刚好有适时的补充。你是穷不了的,只是还称不上是大富翁。ElseIf Val(Text1) = 3 ThenText2 = 你看起来实在不象是会成为大富翁的人,但是人不可貌相,你偏偏是最有机会成为大富翁的人。你的财运很好,做什么工作都赚钱!连你自己都不清楚是怎么变成大富翁的。End IfEnd SubPrivate Sub Command2_Cl

10、ick()Text1 = 1Text2 = End Sub三、某航空公司规定在79月份,如果订票数超过20张,则票价优惠15%,如果超过10张则票价优惠5%,在15月份、10月份和11月份,如果订票数超过20张,则票价优惠25%,如果超过10张,则票价优惠15%。从窗体文本框中输入票价、月份以及订票数,并显示出所需金额。Private Sub Command1_Click()Dim s As IntegerDim m As IntegerDim v As IntegerDim n As Integerm = Val(Text1)v = Val(Text2)n = Val(Text3)Selec

11、t Case mCase 7 To 9 If n 20 Then s = v * n * 0.85 ElseIf n 10 Then s = v * n * 0.95 Else: s = v * n End IfCase 1 To 5, 10, 11 If n 20 Then s = v * n * 0.75 ElseIf n 10 Then s = v * n * 0.85 Else: s = v * n第9周一、写一个程序求1-100的奇数的和。Private Sub Command1_Click()Dim i As Integer, s As Integers = 0For i = 1

12、To 100 Step 2 s = s + i Next i Text1.Text = sEnd Sub二、写一个程序,要求能打印以下图形,打印十行。Private Sub Command1_Click()Dim i As Integer, c As StringFor i = 1 To 10c = c + *Print cNext iEnd Sub三、求所有水仙花数(水仙花数为3位(100-999)正整数,各位的数字立方和等于本身)。Private Sub Command1_Click()Dim i As Integer, a As Integer, b As Integer, c As I

13、ntegerFor i = 100 To 999a = i 100b = i 10 Mod 10c = i Mod 10If i = a 3 + b 3 + c 3 ThenPrint iEnd IfNext iEnd Sub四、用随机函数产生9个两位的正整数,并使用print语句在窗体上按照矩阵的排列显示出来。Private Sub Command1_Click()Dim i As Integer, a As IntegerFor i = 1 To 9Randomizea = Int( (99 - 10 + 1) * Rnd) + 10Print a;If i Mod 3 = 0 ThenP

14、rintEnd IfNext iEnd Sub第11周1、 完成书上冒泡排序的算法。掌握循环嵌套和数组结合在一起的用法。2、 按照要求编写程序:新建一个VB工程,在窗体中添加三个按钮,名称分别为“btnInput”、“btnMax”和“btnMin”,按钮上分别显示“输入数据”、“求最大值”和“求最小值”。在适当的事件过程中编写代码,使得程序运行时,当点击“输入数据”按钮的时候,程序通过InputBox函数让用户输入8个整数,放入一个数组中,并将这8个数显示在窗体上;当点击“求最大值”按钮的时候,程序求出数组中的最大数,显示在窗体上;当点击“求最小值”按钮的时候,程序求出数组中的最小数,显示在

15、窗体上。程序编写完毕后,运行,查看结果。(要注意由于题目要求的三个功能是在不同事件里完成的,所以要把存放数据的数组设置为全局变量)接下来,将整个工程保存到“G:MyProjectVB1”文件夹中,窗体文件名为“VB1.frm”,工程文件名为“VB1.vbp”。最后,退出VB。 Dim a(1 To 8) As IntegerPrivate Sub btnInput_Click()For i = 1 To 8a(i) = InputBox(输入整数)Print a(i);Next iEnd SubPrivate Sub btnMax_Click()Max = 1For i = 1 To 8If

16、a(i) a(Max) ThenMax = iEnd IfNext iPrintPrint 最大的数是; a(Max)End SubPrivate Sub btnMin_Click()Min = 1For i = 1 To 8If a(i) = a) And (char = A) And (char = 0) And (char 0 Theny = xElseIf x = 0 Theny = 0Else y = Abs(x)End IfPrint yEnd Sub2、在窗体上放置1个命令按钮(名称为Command1)和1个文本框(名称为Text1),然后编写如下事件过程:Private Sub

17、 Command1_Click()x=Val(Text1.Text) Select Case xCase Is=10,Is=7Print I=; IPrint x=; xA) I4x5B) I7x15C) I6x8D) I10x76、下列程序是判断一个整数(=3) 是否为素数,请补充完整。Dim n As Integern=InputBox(请输入一个整数(=3) ) k=Int(Sqr(n) ) i=2tag=0While i 1000)次开关后,最后都有哪几盏灯是亮着的?(可先不用上交,13周上机时交)Private Sub Command1_Click()Dim a(1 To 7) As

18、 IntegerDim b As IntegerDim k As IntegerDim c As IntegerFor i = 1 To 7a(i) = i Mod 2Next in = InputBox(输入次数)b = n 7k = n Mod 7c = b Mod 2If k = 0 And c = 0 Then For i = 1 To 7 If a(i) = 1 Then Print 亮; Else: Print 关; End IfNext iEnd IfIf k = 0 And c 0 Then For i = 1 To 7 a(i) = 1 - a(i) If a(i) = 1

19、Then Print 亮; Else: Print 关; End If Next iEnd IfIf k 0 And c = 0 Then For i = 1 To k a(i) = 1 - a(i) Next i For i = 1 To 7 If a(i) = 1 Then Print 亮; Else: Print 关; End If Next i End IfIf k 0 And c 0 Then For i = 1 To 7 a(i) = 1 - a(i) Next i For i = 1 To k a(i) = 1 - a(i) Next i For i = 1 To 7 If a(

20、i) = 1 Then Print 亮; Else: Print 关; End If Next iEnd IfPrintPrint A B C D E F GEnd Sub参考答案:Option Base 1Private Sub Command1_Click() Dim a a = Array(1, 0, 1, 0, 1, 0, 1) For n = 1 To 100 i = n Mod 7 If i = 0 Then i = i + 7 If a(i) = 1 Then a(i) = 0 Else a(i) = 1 End If Next n For n = 1 To 7 num = As

21、c(A) + n - 1 If a(n) = 1 Then Print Chr(num) End If Next nEnd Sub第13周1、设计一个加油站计费程序,各种汽油的收费不同:90号汽油单位为2.8元/升,93号汽油单价为3.4元/升,97号汽油单价为3.6元/升。界面如下:功能要求:在窗体上放置1个框架,由于汽油种类互斥,使用单选按钮可以选择汽油种类,3个单选按钮分成一组,3个标签,第一个标签显示“数量(升)”,第二个标签显示所选汽油的单价,第三个标签显示总价格。1个文本框用来输入汽油的数量。1个命令按钮用来计算总价格。Private Sub Command1_Click()If

22、Option1.Value = True Then Label3.Caption = 总价格为: & 2.8 * Text1 & 元 ElseIf Option2.Value Then Label3.Caption = 总价格为: & 3.4 * Text1 & 元Else Label3.Caption = 总价格为 & 3.6 * Text1 & 元 End If End SubPrivate Sub Option1_Click()Label2.Caption = 90号汽油单价2.80升/元End SubPrivate Sub Option2_Click()Label2.Caption =

23、 93号汽油单价3.40升/元End SubPrivate Sub Option3_Click()Label2.Caption = 97号汽油单价3.60升/元End Sub2、按照要求编写程序:新建一个VB工程,在窗体中添加一个文本框,名称为“txtResult”,默认显示的内容为空;添加一组单选按钮,单选按钮名称分别为“Op1”、“Op2”,显示内容分别为“飞机”、“火车”;再添加一组单选按钮,单选按钮名称分别为“Op3”、“Op4”,显示内容分别为“广州”、“上海”;添加一个按钮,名称为“btnShow”,按钮上显示“显示”。在适当的事件过程中编写代码,使得程序运行时,当点击按钮的时候,

24、程序完成以下功能:根据选中的单选按钮,在文本框中显示“坐什么去哪里”。程序编写完毕后,运行,查看结果。接下来,将整个工程保存到“G:MyProjectVB1”文件夹中,窗体文件名为“VB1.frm”,工程文件名为“VB1.vbp”。最后,退出VB。Private Sub btnShow_Click()If Option1.Value = True Then If Option3.Value = True Then text1.Text = 坐飞机去广州 Else text1.Text = 坐飞机去上海 End IfElse If Option3.Value = True Then text1.

25、Text = 坐火车去广州 Else text1.Text = 坐火车去上海 End IfEnd IfEnd Sub第15周一、完成书上范例4-7。二、(1)在窗体中实现标签由右向左的滚动,标签显示“您好,网络之家”这几个字。(2)窗体的标题为自己学号和姓名。(3)用一个命令按钮控制,如果标签在滚动,点击命令按钮后停止,如果标签停止,点击命令按钮后滚动。(4)保存窗体文件:名为righttoleft.frm和工程文件:名为righttoleft.vbp。Dim i As IntegerPrivate Sub Command1_Click()i = i + 1If i Mod 2 = 0 The

26、nTimer1.Enabled = FalseElseTimer1.Enabled = TrueEnd IfEnd SubPrivate Sub Timer1_Timer()Label1.Move Label1.Left - 100If Label1.Left 10 ThenLabel1.Move Form1.Width - 100End IfEnd Sub三、用列表等控件实现如下功能:1. 先存放中药:冬虫夏草、益智仁、菟丝子、沙苑子,信息录入到列表框中2. 选中不同中药,在label4中报告中药名(Label4.Caption = List1.Text)3. 实现添加新项目功能(List1

27、.AddItem Text1)4. 实现删除单项功能,若没有列表内容,则报出信息提示:If List1.ListIndex = -1 Then MsgBox 请在左列表框中选择删除的中药!Else List1.RemoveItem List1.ListIndex Label4.Caption = 5. 实现全部清除功能(List1.Clear)6. 报告共有多少种中药,注意添加和删除时要修改数目每次增加、删除后调用label2.Caption=lsit1.listcountPrivate Sub Command1_Click()List1.AddItem Text1.TextLabel2.Ca

28、ption = List1.ListCountEnd SubPrivate Sub Command2_Click()If List1.ListIndex = -1 Then MsgBox 请在左列表框中选择删除的中药!Else List1.RemoveItem List1.ListIndex Label4.Caption = End IfLabel2.Caption = List1.ListCountEnd SubPrivate Sub Command3_Click()List1.ClearLabel2.Caption = List1.ListCountEnd SubPrivate Sub List1_Click()Label4.Caption = List1.TextEnd Sub

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

当前位置:首页 > 教育教学 > 成人教育


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号