1、程序填空题程序填空题说明:1. 程序填空题共64题,按教科书的内容顺序排列。2. 在每题的程序说明后有一段程序代码,该程序段不完整。3. 请将代码中的“-n-”替换必要的内容,使其完整。n = 1,2,3,4。4. 可将程序段复制到VB代码窗口中进行调试。*01. 窗体中有一个标签,初始时标签中无内容。下列程序段要实现单击窗体时, 窗体宽高均为5000,并位于屏幕左上角,同时在标签中显示“中国杭州”。Private Sub Form_Click() Form1.Left = 0 Form1.Top = -1-2- = 5000 -3- = 5000 -4- = 中国杭州 End Sub*02.
2、 窗体中有一个标签,初始时标签中无内容。下列程序段要实现单击窗体时, 窗体占屏幕整个上半部,同时使“中国杭州”标签位于窗体的正中间。Private Sub Form_Click() Form1.Left = 0 Form1.Top = 0 Form1.Width = -1- Form1.Height = -2- Label1.Caption = 中国杭州 Label1.Left = -3- Label1.Top = -4-End Sub*03. 窗体中有两个大小相同的按钮控件,标题分别为“左移”和“右移”。下列程序段要实现按钮间距和按钮与边界距相等。单击按钮时, 窗体向左或右移动200。Pri
3、vate Sub Form_Load() Form1.Left = 4000: Form1.Top = 2000 Form1.Width = 5000: Form1.Height = 2000 Command1.Caption = 左移: Command2.Caption = 右移 Command1.Width = 1000: Command2.Width = Command1.Width Command1.Height = 500: Command2.Height = Command1.Height Command1.Top = 600: Command2.Top = Command1.To
4、pCommand1.Left = -1-Command2.Left = -2-End SubPrivate Sub Command1_Click() Form1.Left = -3-End SubPrivate Sub Command2_Click() Form1.Left = -4-End Sub*04. 窗体中有两个大小相同的按钮,分别为“上移”和“下移”。下列程序段要实现其间距和与边界距相等,单击按钮时, 窗体向上或下移动100。Private Sub Form_Load()Form1.Move 4000, 2000, 5000, 2000Command1.Caption = 上移: C
5、ommand2.Caption = 下移Command1.Move -1-Command2.Move -2-End SubPrivate Sub Command1_Click() -3-End SubPrivate Sub Command2_Click() -4-End Sub05. 窗体中有两个大小相同的按钮,分别为“移动”和“暂停”。下列程序段要实现单击按钮时,窗体连续向右移动或暂停。Private Sub Form_Load()Command1.Caption = 移动: Command2.Caption = 暂停Timer1.Interval = 100 Timer1.Enabled
6、= -1-End SubPrivate Sub Timer1_Timer() Form1.Move -2-End SubPrivate Sub Command1_Click() -3-End SubPrivate Sub Command2_Click() -4-End Sub*06. 下列程序段要求每一次单击窗体,直径固定为400的圆形控件自动从左下向右上沿45度方向运动。Private Sub Form_Load()Form1.Move 0, 0, 5800, 6000Shape1.Shape = 3Timer1.Interval = 100Timer1.Enabled = FalseEnd
7、 SubPrivate Sub Form_Click()Shape1.Move 0, 5200, -1-Timer1.Enabled = -2-End SubPrivate Sub Timer1_Timer()Shape1.Left = -3-Shape1.Top = -4-End Sub*07. 下列程序段要求每一次单击窗体,圆形形状控件的圆心不动,直径变大30%。Dim -1-Private Sub Form_Load()Form1.Move 0, 0, 6000, 6000Shape1.Move 2800, 2800, 400, 400Shape1.Shape = 3 D = -2-En
8、d SubPrivate Sub Form_Click() D = -3- Shape1.Move -4-End Sub*08. 下列程序段要求窗体左上角不动,第一次单击窗体时,窗体宽高各增加100;第二次单击窗体时,窗体宽高各增加200;第三次单击窗体时,窗体宽高各增加300。.以此类推。Private Sub Form_Load()Form1.Move 100, 100, 2000, 1000End SubPrivate Sub Form_Click()-1- nW As IntegernW = -2-Form1.Width = -3-Form1.Height = -4-End Sub*0
9、9. 下列程序段要求每一次单击窗体,圆形控件自动从左上向右下沿抛物线方向运动。提示:水平方向为匀速运动;垂直方向为匀加速(平方关系)运动。Dim X As IntegerPrivate Sub Form_Load()Form1.Move 0, 0, 6000, 6000Shape1.Shape = 3Shape1.Move 0, 0, 100, 100Timer1.Interval = 100Timer1.Enabled = FalseEnd SubPrivate Sub Form_Click()-1-Timer1.Enabled = -2-End SubPrivate Sub Timer1_
10、Timer()X = X + 1Shape1.Left = -3-Shape1.Top = -4-End Sub*10. 下列程序段要求圆形控件自动按椭圆轨道(长短轴比为2:1)运动。提示:椭圆轨道公式为 X = R * COS(Q),Y = R * SIN(Q)/2。Dim -1-Private Sub Form_Load()Form1.Move 0, 0, 6000, 6000Shape1.Shape = 3Shape1.Move 0, 0, 100, 100Timer1.Interval = 100Timer1.Enabled = TrueR = 2000X0 = Form1.Width
11、 / 2Y0 = Form1.Height / 2End SubPrivate Sub Timer1_Timer() -2- Q = Q + 0.1 Shape1.Left = -3- Shape1.Top = -4-End Sub11. 已知函数f(x)的值分三个区间:当x = 0时,f(x) = 0;当0 x =1时 f(x) = x2 +1。下列程序段通过InputBox函数输入x值,再计算出函数值f(x),并在标签Label1中显示。Private Sub Form_Click()Dim x As Single x = InputBox(x=) If -1- Then Label1 =
12、 0 ElseIf -2- Then Label1 = -3- -4- Label1 = x * x + 1 End IfEnd Sub12. 下列程序段为密码检查,单击“登录”按钮,要求用户通过InputBox函数输入密码(12345)。若密码正确,在标签Label1显示“欢迎进入VisualBasic”,同时“登录”按钮消失。若密码不正确,则无反应。Private Sub Form_Load()Command1.Caption = 登录End SubPrivate Sub Command1_Click()-1-Password1 = InputBox(请输入密码)If -2-ThenLab
13、el1 = 欢迎进入VisualBasic-3-4-End Sub13. 下列程序段为密码设置,要求用户通过InputBox函数输入两次密码。若两次输入一致,在标签Label1显示密码已经修改。若两次输入不一致,则在标签Label1显示两次输入不一致,请重新设置。Private Sub Form_Load() Command1.Caption = 密码设置End SubPrivate Sub Command1_Click() -1- Password1 = InputBox(请输入密码) Password2 = InputBox(请再输入一次密码) If -2- Then Label1 = 密
14、码已经修改。 -3- Label1 = 两次输入不一致,请重新设置。 -4- End Sub*14. 窗体中有一个标签,下列程序段要实现中国杭州标签自动向左移动,当标签完全移出窗体左端时,自动再从右端移入。Private Sub Form_Load() Form1.Move 2000, 2000, 6000, 3000 Label1.Caption = 中国杭州 Label1.FontSize = 24 Label1.AutoSize = True Label1.Move 4000, 1000 Timer1.Interval = 100 Timer1.Enabled = TrueEnd Sub
15、Private Sub Timer1_Timer() If -1- Then Label1.Move -2- Else Label1.Move -3- -4- End Sub*15. 下列程序段要求圆形控件在窗体中横向往复运动。当圆形控件碰到窗体左右边界时,自动反向(X = -X)。Dim -1- Private Sub Form_Load() Form1.Move 2000, 2000, 6000, 3000 Shape1.Shape = 3 Shape1.Move 4000, 1000, 400, 400 Timer1.Interval = 100: Timer1.Enabled = Tr
16、ue -2- = 100 End SubPrivate Sub Timer1_Timer() If -3- Then X = -X Shape1.Move -4- End Sub*16. 下列程序段要求圆形控件在窗体中自由运动,到达边界时,自动反向(dX = -dX,dY = -dY)。Dim D, dX, dYPrivate Sub Form_Load() Form1.Move 2000, 2000, 8000, 5000 Shape1.Shape = 3 Timer1.Interval = 100 Timer1.Enabled = True D = 500 dX = 200 dY = 20
17、0 Shape1.Move 0, 0, -1- End SubPrivate Sub Timer1_Timer() If -2- Then dX = -dX If -3- Then dY = -dY Shape1.Move -4- End Sub*17. 窗体中有一个按钮控件,初始为移动。下列程序段要实现单击按钮(移动)时,窗体连续向右移动,按钮改为暂停。再单击按钮(暂停)时,窗体暂停移动,按钮改为移动。周而复始.。Private Sub Form_Load() Form1.Move 100, 2000, 5000, 2000 Command1.Caption = 移动 Command1.Mo
18、ve 2000, 800, 1000, 500 Timer1.Interval = 100 Timer1.Enabled = FalseEnd SubPrivate Sub Timer1_Timer() Form1.Move Form1.Left + 100End SubPrivate Sub Command1_Click() If Command1.Caption = 移动 Then Command1.Caption = -1- Timer1.Enabled = -2- Else Command1.Caption = -3- Timer1.Enabled = -4- End IfEnd Su
19、b*18. 下列程序段判断从InputBox函数输入的整数所在的区间, 并在标签Label1中输出判断结果。Private Sub Form_Load() Form1.Move 0, 0, 6000, 2000 Command1.Caption = 输入整数 Command1.Move 2000, 800, 2000, 500 Label1.Move 800, 200 Label1.AutoSize = True: Label1.FontSize = 16End SubPrivate Sub Command1_Click() Dim nX As Integer nX = InputBox(输入
20、要判断的整数) Select Case nX Case -1- Label1 = 值为0 Case -2- Label1 = 值在1和10之间(包括1和10) Case -3- Label1 = 值大于10 Case -4- Label1 = 值小于0 End SelectEnd Sub*19. 下列程序段先通过InputBox函数输入一个学生成绩(百分制), 然后转化为五级记分(优,良,中,及格,不及格)。并用MsgBox函数显示,例如:该生成绩:95 等级:优。 Private Sub Form_Click() Dim -1- sFs = InputBox(请输入百分制学生成绩:, 输入成
21、绩) Select Case -2- Case 89.5 To 100 sDj = 优 Case 79.5 To 89.4 sDj = 良 Case 69.5 To 79.4 sDj = 中 Case 59.5 To 69.4 sDj = 及格 Case 0 To 59.4 sDj = 不及格 Case -3- sDj = 无效 End Select Temp = MsgBox( -4- , 0, 五级记分) End Sub*20. 下列程序段先通过InputBox函数输入一个个人收入,然后按以下规定给出纳税值:(1)收入在800元以内,免征;(2)收入在800-1200元内,超过800元部分
22、纳税20%(3)收入超过1200元部分,纳税30%(4)收入达到5000元或超过时,将税金30%改为40%Private Sub Form_Click() Dim gM As Single, gNs As Single Dim nX As Integer gM = Val(InputBox(请输入个人收入(元)) Select Case -1- Case Is = 5000 gNs = -4- nX = MsgBox(应纳税 + Str(gNs) + 元, 0, 纳税情况) End SelectEnd Sub*21. 下列程序段中,单击按钮,在标签中依次显示中国,浙江,杭州,西湖。Privat
23、e Sub Form_Load() Form1.Move 0, 0, 5000, 2000 Command1.Move 2000, 1000 Label1.Move 2000, 300 Label1.AutoSize = True: Label1.FontSize = 24End SubPrivate Sub Command1_Click() -1- Select Case Flag Case 0 Label1 = 中国 Flag = -2- Case 1 Label1 = 浙江 Flag = -3- Case 2 Label1 = 杭州 Flag = -4- Case Else Label1
24、 = 西湖 Flag = 0 End SelectEnd Sub22. 下列程序段实现在标签中自动依次显示中国,浙江,杭州,西湖。Private Sub Form_Load() Label1.AutoSize = True: Label1.FontSize = 24 Label1 = -1- Timer1.Interval = 1000 Timer1.Enabled = TrueEnd SubPrivate Sub Timer1_Timer() Select Case Label1 Case -2- Label1 = 中国 Case -3- Label1 = 浙江 Case -4- Label
25、1 = 杭州 Case Else Label1 = 西湖 End SelectEnd Sub23. 下列程序段是计算1+2+3+.+100,单击窗体打印出结果。Private Sub Form_Click() Dim T As Integer, S As Integer T = -1- S = 0 Do While -2- T = T + 1 -3- -4- Form1.Print S =; SEnd Sub24. 下列程序段为密码检查,单击登录按钮,要求用户通过InputBox函数输入密码(12345)。若密码正确,在标签Label1显示欢迎进入VisualBasic,同时登录按钮消失。若密
26、码不正确,要求用户再次输入密码。若三次输错,则退出程序。Private Sub Form_Load() Command1.Caption = 登录End SubPrivate Sub Command1_Click() Dim I As Integer, Password As String For I = 0 To 2 Password = InputBox(请输入密码) If Password = 12345 Then -1- Next If -2- Then -3- -4- Label1 = 欢迎进入VisualBasic Command1.Visible = FalseEnd Sub25
27、. 下列程序段为密码检查,单击登录按钮,要求用户通过InputBox函数输入密码(12345)。若密码正确,在标签Label1显示欢迎进入VisualBasic,同时登录按钮消失。若密码不正确,要求用户再次输入密码。若三次输错,则退出程序。Private Sub Form_Load() Command1.Caption = 登录End SubPrivate Sub Command1_Click() Dim I As Integer, Password As String Do Password = InputBox(请输入密码) If Password = 12345 Then -1- If
28、I = 2 Then -2- -3- -4- Label1 = 欢迎进入VisualBasic Command1.Visible = FalseEnd Sub*26. 下列程序段有5个大小一样(直径D)的圆形控件在窗体中各自随机地自由运动。到达边界时,自动反向:dX(I)=-dX(I),dY(I)=-dY(I),I=0-4。Dim I%, D%, dX%(4), dY%(4)Private Sub Form_Load() Randomize D = 500 For I = 0 To 4 Shape(I).FillColor = QBColor(10 + I) dX(I) = 200 * (-1) Int(Rnd() * 2) dY(I) = 200 * (-1) Int(Rnd() * 2) Shape(I).Move -1- Next I Timer1.Interval = 100 Timer1.Enabled = TrueEnd SubPrivate Sub Timer1
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1