Text1.SetFocus End If
If Len(Text1) <> 6 Then
MsgBox \密码是6位数字\警告\ Text1.Text = \ Text1.SetFocus End If End Sub
Private Sub Command1_Click()
If Text2.Text = \ MsgBox (\祝贺你,成功登录!\ Else
MsgBox (\对不起,密码错误,无法登录!\ I = I + 1
If I >= 3 Then End End If End Sub
6、在上周实验【提高题】的基础上完成,输入三角形的三条边,根据边长判断是否能构成三角形的程序,若能构成,则进一步判断三角形类型(等边、等腰、直角、一般)。
【提示】该题用分支嵌套来完成。
注:请在上周程序代码的适当位置用红笔来添加代码实现。
Private Sub Command1_Click() Dim a!, b!, c!
a = Val(InputBox(\输入第1条边长\b = Val(InputBox(\输入第2条边长\c = Val(InputBox(\输入第3条边长\
If a + b > c And b + c > a And a + c > b Then
If a = b And b = c Then MsgBox \等边\
ElseIf a = b Or b = c Or a = c Then MsgBox \等腰\
ElseIf a ^ 2 = b ^ 2 + c ^ 2 Or b ^ 2 = a ^ 2 + c ^ 2 Or c ^ 2 = a ^ 2 + b ^ 2 Then MsgBox \直角三角形\ Else
MsgBox \一般三角形\ End If Else
MsgBox \此三边不可构成三角形\End If End Sub
28
【选做题】开始运行如左下图所示,单击“出题”按钮后计算机自动出题,窗口如右下图所示,此时由用户输入加法运算答案,然后单击“判定”按钮。如果用户运算正确则提示“答对了,你真聪明!”,否则显示“错了,努力啊!”。再次按下“出题”就会再出一道题。
【提示】①计算机自动出题,显示的题目应该是随机的,所以这里必须使用随机函数Rnd,其值为 [0,1)间的随机数,如果要得到区间 [L,U] 中的随机整数,应使用表达式 Int((U-L+1)*Rnd+L) 。
②命令按钮Command1每次按下时其Caption属性会发生变化,从“出题”变成“判定”,又从“判定”变成“出题”。当它是“出题”时,按下就会随机出题;当它是“判定”时,按下就会对用户输入的答案判断对错。
【思考】多次执行这个程序,是否发现每次出的题目是一样的?如何解决?
【进一步修改程序】使得该工程只可执行10次,每执行一次,判断用户输入的答案是否正确,正确则得10分,错误则不给分。执行10次后,可给出总得分,然后关闭该窗体。
? 代码编写:
代码
Dim i As Boolean
Private Sub Command1_Click() If i = True Then
Text1 = Int(100 * Rnd + 1) '产生[1,100]之间的随机整数 Text2 = Int(100 * Rnd + 1) '产生[1,100]之间的随机整数 Command1.Caption = \判定\ i = False Else
If Text3 = Val(Text1) + Val(Text2) Then MsgBox \答对了,你真聪明!\ Else
MsgBox \错了,努力啊!\ End If i = True
Command1.Caption = \出题\
遇到的主要问题及分析:
29
End If End Sub
Private Sub Command2_Click() End End Sub
Private Sub Form_Load() i = True
Command1.Caption = \出题\
Randomize ?多次执行这个程序,每次出的题目不一样 End Sub
【进一步修改程序】
Dim i As Boolean Dim a%, b%
Private Sub Command1_Click() If a < 10 Then If i = True Then
Text1 = Int(100 * Rnd + 1) '产生[1,100]之间的随机整数 Text2 = Int(100 * Rnd + 1) '产生[1,100]之间的随机整数 Command1.Caption = \判定\ i = False Else
If Text3 = Val(Text1) + Val(Text2) Then MsgBox \答对了,你真聪明!\ b = b + 1 '统计答对的题数 Else
MsgBox \错了,努力啊!\ End If a = a + 1 i = True
Command1.Caption = \出题\End If End If
If a = 10 Then
MsgBox \答对了\End End If End Sub
Private Sub Command2_Click()
30
End End Sub
Private Sub Form_Load() i = True
Command1.Caption = \出题\
Randomize '多次执行这个程序,每次出的题目不一样 a = 0 b = 0 End Sub
实验心得体会
成绩: 教师签名:
31
实验日期 年 月 日
实验六 循环结构程序设计
实验目的:
1.掌握For语句和Do..Loop循环语句的使用。 2.掌握循环的规则及其执行过程。
3.掌握如何控制循环条件,防止死循环或不循环。
实验内容
1. 编写程序,输出7的倍数中十位数为2的所有3位数,并统计个数。
【进一步要求】求满足条件的数的平方和。 ? 代码编写:
代码
Private Sub Command1_Click() t = 0 s = 0
For i = 100 To 999
If i Mod 7 = 0 And Mid(i, 2, 1) = 2 Then Print i t = t + 1 s = s + i ^ 2 End If Next i
Print \满足条件的有\个\Print \End Sub
遇到的主要问题及分析:
2. 编写程序用Print语句输出2000年至2500年间的所有闰年,要求每行输出8个。
【提示】:
1)用任意一种循环语句来完成,在循环体内使用选择结构来判断条件。
2)设置一个计数器。每找到一个闰年,则输出年份(控制Print的输出格式,输出后不换行),并使计数器的值加1,当计数器的值正好是8的倍数时,则换行。
32
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库Visual Basic实验-答案(3)(7)在线全文阅读。
相关推荐: