白话Excel函数公式 Office易学宝微视频教程合集(Excel+Word+PPT)
笨办法学VBA(从入门到精通) 高效办公必会的Office实战技巧
财务总监的Excel私房课 Excel数据透视表实战秘技
Excel图表神技
楼主: 唐伯狼

零基础13期-第五课作业

[复制链接]
发表于 2018-3-16 16:57:07 | 显示全部楼层
  1. Sub 作业1501()

  2.     Dim 今年基本工资 As Long, 李四今年的绩效 As String
  3.    
  4.     今年基本工资 = 5000
  5.     李四今年的绩效 = InputBox("李四今年的绩效")
  6.    
  7.     Select Case 李四今年的绩效
  8.    
  9.     Case "A"
  10.     MsgBox "李四明年基本工资为:" & 今年基本工资 + 500 & "元"
  11.     Case "B"
  12.     MsgBox "李四明年基本工资为:" & 今年基本工资 + 200 & "元"
  13.     Case "C"
  14.     MsgBox "李四明年基本工资为:" & 今年基本工资 + 0 & "元"
  15.     Case "D"
  16.     MsgBox "李四明年基本工资为:" & 今年基本工资 - 200 & "元"
  17.     Case "E"
  18.     MsgBox "李四明年基本工资为:" & 今年基本工资 - 500 & "元"
  19.    
  20.     End Select
  21.    
  22. End Sub

  23. Sub 作业1502()
  24.   Dim 年龄 As Long, msg As String, ret
  25. 年龄 = InputBox("输入年龄")
  26. Select Case 年龄
  27.      Case Is <= 13
  28.      MsgBox "可以看 G 级电影"
  29.      
  30.     Case Is <= 16
  31.        msg = "是否有家里大人陪同"
  32.        ret = MsgBox(msg, vbYesNo)
  33.       If ret = vbYes Then
  34.       MsgBox "可以看PG-13 级"
  35.     Else
  36.        MsgBox "可以看PG 级"
  37.     End If
  38.    
  39.      Case Is <= 18
  40.      MsgBox "可以看NC-17级的电影"
  41.      Case Is > 18
  42.      MsgBox "可以看R 级电影"



  43. End Select
  44. End Sub

  45. Sub 作业1503()

  46. Dim 考试成绩 As Long, i As Long

  47. 考试成绩 = InputBox("小明的考试成绩")
  48.    
  49. If 考试成绩 >= 90 Then
  50.     MsgBox "奖励100元"
  51. Else
  52.    For i = 1 To 100
  53.     Debug.Print "小明抄写第" & i & "遍,我再也不敢马虎了。"
  54.    Next
  55.    
  56. End If

  57. End Sub

  58. Sub 作业1504()
  59. Dim i As Long, sum As Long
  60.    
  61.     sum = 0
  62.     For i = 7 To 100 Step 7
  63.     sum = i + sum
  64.     Debug.Print sum
  65.   Next
  66.    
  67.    

  68. End Sub

  69. Sub 作业1505()
  70.   Dim i As Long, sum1 As Long, j As Long, sum2 As Long, sum As Long
  71.    
  72.     sum1 = 1
  73.     For i = 2 To 100 Step 2
  74.       sum1 = sum1 + i
  75.       
  76.       sum2 = 0
  77.       For j = -3 To -99 Step -2
  78.      
  79.        sum2 = sum2 + j
  80.       
  81.       
  82.    Next
  83.    Next
  84.       MsgBox sum1 + sum2
  85.       
  86. End Sub

  87. Sub 作业1506()
  88.     Dim 人数 As Long, 学生成绩 As Long, 总分 As Long
  89.    
  90.     人数 = InputBox("请输入班级人数")
  91.     For 人数 = 1 To 5
  92.     学生成绩 = InputBox("请输入学生成绩")
  93.     总分 = 总分 + 学生成绩
  94.    

  95. Next
  96.      MsgBox "该班级学生成绩的总分是" & 总分 & "分" & vbCr _
  97.      & "该班级学生成绩的平均分是" & 总分 / 人数
  98.      

  99. End Sub



  100. Sub 作业1507()
  101.     Dim i As Long, inputv As Long, maxv As Long, maxi As Long
  102.     For i = 1 To 5
  103.         inputv = Val(InputBox("请输入一个正数"))
  104.       
  105.         If inputv < 0 Then inputv = 0
  106.    
  107.          If maxv < inputv Then
  108.                maxv = inputv
  109.                maxi = i
  110.            End If
  111.            
  112.          Next
  113.          MsgBox "最大输入值是" & maxv & ",输入次数是第" & maxi & "次"
  114.                   
  115.          

  116.         
  117. End Sub
复制代码
回复 支持 反对

使用道具 举报

发表于 2018-3-16 18:00:33 | 显示全部楼层
Sub homework1()
Dim rating As String, wage As Long

rating = "E"

Select Case rating
Case "A"

wage = 5000 + 500

MsgBox "李四来年的工资是" & wage


Case "B"

wage = 5000 + 200
MsgBox "李四来年的工资是" & wage

Case "C"
wage = 5000
MsgBox "李四来年的工资是" & wage

Case "D"

wage = 5000 - 200
MsgBox "李四来年的工资是" & wage

Case "E"

wage = 5000 - 500
MsgBox "李四来年的工资是" & wage

End Select

End Sub

Sub Homework2()

Dim age As Long, accompany As String


age = InputBox("please enter your age")

Select Case age
Case age <= 13
MsgBox "可以看G级电影"

Case Is <= 16
accompany = InputBox("家里是否有大人陪同")
Select Case accompany
Case "Yes"
MsgBox "可以看PG-13级电影"
Case Else
MsgBox "可以看PG级电影"
End Select

Case Is <= 18

MsgBox "可以看G级电影"

Case Else

MsgBox "可以看R级电影"



End Select

End Sub

Sub homework3()

Dim score As Long, i As Long

score = InputBox("please input your score")

Select Case score
Case Is >= 90
Debug.Print "奖励小明100元"

Case Else

For i = 1 To 100

Debug.Print "小明抄写第" & i & "遍,我再也不敢马虎了"
Next


End Select

End Sub

Sub homework4()

Dim i As Long, sum As Long
For i = 7 To 100 Step 7

sum = sum + i

Next
MsgBox sum

End Sub

Sub homework5()
Dim i1 As Long, i2 As Long, sum1 As Long, sum2 As Long, sum As Long

For i1 = 2 To 100 Step 2
sum1 = sum1 + i1
Next

For i2 = 3 To 100 Step 2
sum2 = sum2 + i2
Next

sum = 1 + sum1 - sum2
MsgBox sum

End Sub


Sub homework6()
Dim no As Long, score As Long, total As Long, avg As Double, i As Long

no = InputBox("请输入班级人数")

For i = 1 To no

score = InputBox("please enter your score")

total = total + score

Next

avg = total / no

MsgBox "班级的总分是" & total & "分"
MsgBox "班级的平均分是" & avg & "分"

End Sub
回复 支持 反对

使用道具 举报

发表于 2018-3-16 18:48:23 | 显示全部楼层
  1. Option Explicit

  2. '作业1: 要求使用Select case
  3. '年终评定,绩效工资,如果评定为A 每月工资加500,如果为B 每月工资 加200
  4. '如果为C 不变,如果为D 降薪200 如果为E 降薪500。李四基本工资为 5000,
  5. '根据评定计算他来年的工资。用 Select Case


  6. Sub gongzi()
  7.     Dim 评级 As String, 工资 As Integer, 姓名 As String
  8.     姓名 = "李四"
  9.     工资 = 5000
  10.     评级 = "A"
  11.     Select Case 评级
  12.             Case "A"
  13.             MsgBox 姓名 & "来年的工资" & 工资 + 500
  14.             Case "B"
  15.             MsgBox 姓名 & "来年的工资" & 工资 + 200
  16.             Case "C"
  17.             MsgBox 姓名 & "来年的工资" & 工资
  18.             Case "D"
  19.             MsgBox 姓名 & "来年的工资" & 工资 - 200
  20.             Case "E"
  21.             MsgBox 姓名 & "来年的工资" & 工资 - 500
  22.     End Select
  23. End Sub


  24. ' 作业2 : 胡说电影分级制度演示程序:提示输入年龄,
  25. '如果小于等于 13 岁,提示可以看 G 级电影,如果大于13岁但是小等于16 岁,提问是否有家里大人陪同,
  26. '如果是,可以看PG-13 级, 否则可以看PG 级。如果大于16岁 但小等于18岁,可以看NC-17级 级的电影,
  27. '大于18岁可以看R 级电影。

  28. Sub 电影分级制度()
  29.     Dim 年龄 As Integer, 提问 As String, msg As String
  30.     年龄 = Val(InputBox("请输入您的年龄"))
  31.     Select Case 年龄
  32.             Case Is <= 13
  33.                 MsgBox "可以看G级电影"
  34.             Case Is <= 16
  35.             msg = "是否有家里大人陪同"
  36.             提问 = MsgBox(msg, vbYesNo, "请选择")
  37.                 Select Case 提问
  38.                     Case Is = vbYes
  39.                     MsgBox "可以看PG-13级电影"
  40.                     Case Is = vbNo
  41.                     MsgBox "可以看PG级电影"
  42.                 End Select
  43.             Case Is <= 18
  44.                 MsgBox "可以看NC-17级的电影"
  45.     End Select
  46. End Sub
  47. '.MsgBox


  48. '循环作业1:
  49. '输入小明的考试成绩,如果考试成绩大等于90分,则奖励100元。
  50. '否则,惩罚小明写一百遍 “我再也不敢马虎了”。在立即窗口输出"小明抄写第多少遍"
  51. '(debug.print,语句的使用)

  52. '第一步:输入小明的考试成绩
  53. '第二步:判断小明的成绩是否>=90分
  54. '第三步:如果>=90 那么奖励小明100元
  55. '第三步: 否则,小明从第1遍 --第100遍 ,并在立即窗口输出

  56. Sub 输出demo()
  57.     Dim i As Long, name As String, 成绩 As Integer
  58.    
  59.     name = "小明"
  60.     成绩 = Val(InputBox("请输入考试成绩"))
  61.     If 成绩 >= 90 Then
  62.     MsgBox "奖励100元"
  63.    
  64.     Else
  65.     For i = 1 To 100
  66.     Debug.Print "小明抄写第" & i & "遍,我再也不敢马虎了。"
  67.     Next
  68.     End If
  69.    
  70. End Sub

  71. '循环作业2 :高斯累加的最简单的变种
  72. '
  73. '请编程计算1…100 当中所有7的倍数的累计和
  74. Sub 高斯累加的变种运用()
  75.     Dim i As Integer, sumv As Long, h As Integer
  76.    
  77.     For i = 1 To 100
  78.         If i Mod 7 = 0 Then
  79.         sumv = sumv + i
  80.         Debug.Print sumv
  81.         End If
  82.     Next
  83.    
  84. End Sub


  85. '循环作业3:高斯累加的变种
  86. '编程计算1+2-3+4-5+6… 100 的结果
  87. Sub 高斯累加的运用()
  88.     Dim i As Long, j As Long, suma As Long, sumb As Long
  89.     suma = 1
  90.     For i = 0 To 100 Step 2
  91.    
  92.         suma = suma + i
  93.         Debug.Print suma
  94.     Next
  95.     For j = 3 To 100 Step 2
  96.    
  97.         sumb = sumb + j
  98.         Debug.Print sumb

  99.     Next
  100.     MsgBox "结果" & suma - sumb
  101. End Sub



  102. '循环作业4:不考虑乱输入
  103. ' 输入班级人数,然后依次输入学生成绩。最后输出该班级学生成绩的总分和平均分。
  104. '建议该班学生不超过5人
  105. '第一步:你输入一个班级人数 ---- 声明一个变量存班级人数 3
  106. '                                变量:学生成绩
  107. '                                总分 = 总分+学生成绩
  108. '第二步:构建循环,依次输入每一个学生的成绩,对总分进行累加
  109. '第三步:依据总分与班级人数求平均分
  110. Sub 求班级的总分和平均分()
  111.     Dim 人数 As Long, 学生成绩 As Long, 总分 As Long, i As Long
  112.     '人数 = "请输入班级人数"
  113.     '从第1个到人数多个
  114.     '总分 = 总分+学生成绩 ---高斯累加
  115.    
  116.     人数 = Val(InputBox("请输入班级人数"))
  117.     For i = 1 To 人数
  118.     学生成绩 = Val(InputBox("请输入学生成绩"))
  119.     总分 = 总分 + 学生成绩
  120.     Next
  121.     MsgBox "总分" & 总分
  122.     MsgBox "平均分" & 总分 / 人数

  123. End Sub



  124. '***循环作业5:
  125. '不断要求用户输入一个数字(inputbox),如果用户输入字符串则该数字为0. 如果该用户输入到第5 遍,
  126. '程序会结束。Msgbox 输出用户输入过的最大数字和该数字是第几次输入的。(注意:不考虑负数)
  127. '朴素的算法:打擂台
  128. '定义一个变量maxV 最大值, Maxi 存输入最大值的那次的次数
  129. 'maxv =1
  130. Sub demo5()
  131.     Dim i As Long, inputV As Long, maxv As Double, maxi As Long
  132.    
  133.     For i = 1 To 5
  134.         inputV = Val(InputBox("请输入一个正数"))
  135.         If inputV < 0 Then inputV = 0
  136.         Debug.Print inputV
  137.         
  138.         
  139.         If maxv < inputV Then
  140.             maxv = inputV
  141.             maxi = i
  142.         End If
  143.         
  144.     Next
  145.         MsgBox "最大值" & maxv & ",第" & maxi & "次输入的值最大"
  146.    
  147.         
  148. End Sub
复制代码


回复 支持 反对

使用道具 举报

发表于 2018-3-17 12:25:04 | 显示全部楼层

老哥,你是不是应该报进阶班,错报到基础班了?
回复 支持 反对

使用道具 举报

发表于 2018-3-17 14:21:47 | 显示全部楼层
被折叠了,再发一次
  1. Sub 作业1()
  2.     Dim 工资 As Long, 评定 As String
  3.     工资 = 5000
  4.     评定 = InputBox("输入评定结果")
  5.     Select Case 评定
  6.     Case "A"
  7.         MsgBox "来年的工资为" & (工资 + 500)
  8.     Case "B"
  9.         MsgBox "来年的工资为" & (工资 + 200)
  10.     Case "C"
  11.         MsgBox "来年的工资为" & (工资)
  12.     Case "D"
  13.         MsgBox "来年的工资为" & (工资 - 200)
  14.     Case "E"
  15.         MsgBox "来年的工资为" & (工资 - 500)
  16.     Case Else
  17.         MsgBox "输入错误"
  18.     End Select
  19.    
  20. End Sub

  21. Sub 作业2()
  22.     Dim 年龄 As Long, ret As String
  23.     年龄 = InputBox("请输入年龄")
  24.     Select Case 年龄
  25.         Case Is <= 13
  26.             MsgBox "可以看G级"
  27.         
  28.         Case Is <= 16
  29.    
  30.             ret = MsgBox("是否有家长", vbYesNo, "提问")
  31.                 If ret = vbYes Then
  32.                 MsgBox "可以看PG-13级"
  33.                 Else
  34.                 MsgBox "可以看PG级"
  35.                 End If
  36.         Case Is <= 18
  37.             MsgBox "可以看NC-17级"
  38.         Case Else
  39.             MsgBox "可以看R级"
  40.             
  41.         End Select

  42.    
  43. End Sub

  44. Sub 循环作业1()
  45.     Dim 成绩 As Long, i As Long
  46.     成绩 = InputBox("请输入成绩")
  47.     Select Case 成绩
  48.     Case Is >= 90
  49.         MsgBox "奖励小明100元"
  50.     Case Else
  51.         For i = 1 To 100
  52.         Debug.Print "小明抄写第" & i & "遍,我再也不敢马虎了。"
  53.         Next
  54.     End Select
  55.    
  56. End Sub

  57. Sub 循环作业2()
  58.    Dim i As Long, sumseven As Long
  59.    For i = 1 To 100
  60.        If i Mod 7 = 0 Then _
  61.        sumseven = sumseven + i
  62.    Next
  63.    MsgBox sumseven
  64.    
  65. End Sub
  66. Sub 循环作业3()
  67.    Dim i As Long, sum As Long
  68.    For i = 1 To 100
  69.        If i = 1 Then
  70.        sum = sum + i
  71.        ElseIf i Mod 2 = 0 Then
  72.        sum = sum + i
  73.        Else
  74.        sum = sum - i
  75.        End If
  76.       
  77.    Next
  78.    MsgBox sum
  79.    
  80.    
  81. End Sub
  82. Sub 循环作业4()

  83.     Dim 人数 As Long, 学生成绩 As Long, 总分 As Long
  84.     Dim i As Long
  85.    人数 = InputBox("请输入班级人数")
  86.     For i = 1 To 人数
  87.    学生成绩 = InputBox(("请输入第") & i & ("位学生的成绩"))
  88.    总分 = 总分 + 学生成绩
  89.     Next

  90.     MsgBox ("该班学生成绩的总分是") & 总分
  91.     MsgBox ("该班学生成绩的平均分是") & (总分 / 人数)

  92. End Sub

  93. Sub 循环作业5()

  94.     Dim i As Long, inputV As Long, maxV As Long, maxi As Long
  95.     For i = 1 To 5
  96.         inputV = Val(InputBox("请输入一个正数"))
  97.         If inputV < 0 Then inputV = 0
  98.         Debug.Print inputV
  99.         If inputV > maxV Then
  100.             maxV = inputV
  101.             maxi = i
  102.         End If
  103.     Next

  104.     MsgBox (("用户输出过的最大数字是") & maxV & (",是第") & _
  105.     maxi & ("次输出的"))

  106. End Sub



复制代码
回复 支持 反对

使用道具 举报

发表于 2018-3-17 18:55:10 | 显示全部楼层
Sub demo()

Dim i As Long, inputV As Long, maxV As Long, maxi As Long

For i = 1 To 5
inputV = Val(InputBox("please enter a no."))

If maxV < inputV Then

maxV = inputV
maxi = i


End If
Next

MsgBox "最大数字是" & maxV
MsgBox "出现在第" & maxi & "次"

End Sub
回复 支持 反对

使用道具 举报

发表于 2018-3-18 18:51:32 | 显示全部楼层
本帖最后由 ejijier 于 2018-3-18 21:21 编辑

复制代码
  1. Sub 年终评定()
  2.     Dim 绩效评定, 每月工资 As Double
  3.     每月工资 = 5000
  4.     绩效评定 = inputbox("请输入李四的绩效评定")
  5.     Select Case 绩效评定
  6.         Case "A"
  7.             每月工资 = 每月工资 + 500
  8.         Case "B"
  9.             每月工资 = 每月工资 + 200
  10.         Case "C"
  11.             每月工资 = 每月工资 + 0
  12.         Case "D"
  13.              每月工资 = 每月工资 - 200
  14.         Case "E"
  15.             每月工资 = 每月工资 - 500
  16.     End Select
  17.     MsgBox "李四来年的每月工资为" & 每月工资 & "元"
  18.    
  19. End Sub

  20. Sub 电影分级()
  21.     Dim 年龄 As Long, ret As String
  22.     年龄 = inputbox("请输入年龄")
  23.     Select Case 年龄
  24.     Case Is <= 13
  25.         MsgBox "您可以看G级电影"
  26.     Case Is <= 16
  27.         ret = MsgBox("是否有大人陪同", vbYesNo, "判断")
  28.      If ret = vbYes Then
  29.                     MsgBox "您可以看PG-13级电影"
  30.                     Else
  31.                     MsgBox "您可以看PG级电影"
  32.                     
  33.      End If
  34.      Case Is <= 18
  35.         MsgBox "您可以看NC-17级电影"
  36.      Case Is > 18
  37.         MsgBox "您可以看R级电影"
  38.     End Select
  39.         

  40. End Sub
复制代码



  1. Sub 循环作业1()
  2.     Dim 成绩 As Long, i As Long
  3.     成绩 = inputbox("请输入小明的考试成绩")
  4.    If 成绩 >= 90 Then
  5.             MsgBox "奖励100元"
  6.         Else
  7.            For i = 1 To 100
  8.            Debug.Print "小明抄写第" & i; "遍,我再也不敢马虎了。"
  9.            Next
  10.     End If
  11. End Sub

  12. Sub 循环作业2()
  13.     Dim i, sum As Long
  14.     For i = 7 To 100 Step 7
  15.        sum = sum + i
  16.        Debug.Print sum
  17.       
  18.     Next
  19.    
  20. End Sub


  21. Sub 循环作业4()
  22.     Dim i As Long, sum As Long
  23.     sum = 1
  24.     For i = 2 To 100
  25.     sum = sum + (-1) ^ i * i
  26.     Next
  27.     MsgBox sum
  28. End Sub
复制代码


回复 支持 反对

使用道具 举报

发表于 2018-3-19 23:25:05 | 显示全部楼层
  1. Option Explicit

  2. Sub 李四工资()
  3.     Dim 基本工资 As Long, 来年工资 As Long, 年终评定 As String
  4.     基本工资 = 5000
  5.     年终评定 = Inputbox("请输入李四年终评定:")
  6.     Select Case 年终评定
  7.         Case "A"
  8.             来年工资 = 基本工资 + 500
  9.         Case "B"
  10.             来年工资 = 基本工资 + 200
  11.         Case "C"
  12.             来年工资 = 基本工资
  13.         Case "D"
  14.             来年工资 = 基本工资 - 200
  15.         Case "E"
  16.             来年工资 = 基本工资 - 500
  17.         End Select
  18.     MsgBox "李四来年工资为:" & 来年工资

  19. End Sub

  20. Sub 电影分级()
  21.     Dim 年龄 As Long, ret As String
  22.     年龄 = Inputbox("请输入年龄:")
  23.     Select Case 年龄
  24.         Case Is <= 13
  25.             MsgBox ("可以观看G级电影")
  26.         Case Is <= 16
  27.             ret = MsgBox("是否有家里大人陪同?", vbYesNo)
  28.             If ret = vbYes Then
  29.                 MsgBox ("可以观看PG-13级电影")
  30.             Else
  31.                 MsgBox ("可以观看PG级电影")
  32.             End If
  33.         Case Is <= 18
  34.             MsgBox ("可以观看NC-17级电影")
  35.         Case Else
  36.             MsgBox ("可以观看R级电影")
  37.         End Select
  38. End Sub

  39. Sub 小明抄写()
  40.     Dim 小明成绩 As Long, i As Long
  41.     小明成绩 = Inputbox("小明成绩为:")
  42.     Select Case 小明成绩
  43.         Case Is >= 90
  44.             MsgBox ("奖励小明100元")
  45.         Case Else
  46.             For i = 1 To 100
  47.                 Debug.Print "小明抄写第" & i&; "遍“我再也不敢马虎了。”"
  48.             Next
  49.         End Select
  50.         
  51. End Sub

  52. Sub 倍数累计和()
  53.     Dim i As Long, sumv As Long
  54.     sumv = 0
  55.     For i = 1 To 100
  56.         If i Mod 7 = 0 Then
  57.             sumv = sumv + i
  58.         End If
  59.     Next
  60.     MsgBox sumv

  61. End Sub

  62. Sub 高斯累加变种()
  63.     Dim i As Long, sumv As Long
  64.     sumv = 1
  65.     For i = 2 To 100
  66.         If i Mod 2 = 0 Then
  67.             sumv = sumv + i
  68.         Else
  69.             sumv = sumv - i
  70.         End If
  71.     Next
  72.     MsgBox sumv

  73. End Sub

  74. Sub 求班级总分和平均分()
  75.     Dim 班级人数 As Long, 学生成绩 As Long, 总分 As Long, 平均分 As Long, i As Long
  76.     总分 = 0
  77.     班级人数 = Inputbox("请输入班级人数:")
  78.     For i = 1 To 班级人数
  79.         学生成绩 = Inputbox("请输入第" & i & "位同学成绩:")
  80.         总分 = 总分 + 学生成绩
  81.     Next
  82.     平均分 = 总分 / 班级人数
  83.     MsgBox ("班级总分是 " & 总分 & ";平均分是 " & 平均分)
  84.    
  85. End Sub

  86. Sub 最大值()
  87.     Dim i As Long, inputV As Long, maxV As Long, maxI As Long
  88.     maxI = 1
  89.     maxV = 0
  90.     For i = 1 To 5
  91.         inputV = Val(Inputbox("请输入一个正数"))
  92.         If inputV < 0 Then inputV = 0
  93.         Debug.Print inputV
  94.         If inputV >= maxV Then
  95.             maxV = inputV
  96.             maxI = i
  97.         End If
  98.     Next
  99.     MsgBox ("最大值为 " & maxV & ";在第" & maxI & "次出现")

  100. End Sub
复制代码
回复 支持 反对

使用道具 举报

发表于 2018-3-21 13:39:29 | 显示全部楼层
select 作业1.
Sub 工资()
    Dim 年终评定 As String, 基本工资 As Long
    年终评定 = InputBox("请输入年终评定")
    基本工资 = 5000
    Select Case 年终评定
    Case "A"
        MsgBox 基本工资 + 500
    Case "B"
        MsgBox 基本工资 + 200
    Case "C"
        MsgBox 基本工资
    Case "D"
        MsgBox 基本工资 - 500
    End Select
End Sub
2.
Sub 电影分级()
    Dim 年龄 As Long, ret
    年龄 = InputBox("请输入年龄")
    Select Case 年龄
    Case Is <= 13
        MsgBox "可以看G级电影"
    Case Is <= 16
        ret = MsgBox("是否有家里大人陪同", vbYesNo)
            If ret = vbYes Then
                MsgBox "可以看PG-13 级"
             Else
                MsgBox "可以看PG 级"
            End If
    Case Is <= 18
         MsgBox "可以看NC-17级的电影"
    Case Is > 18
        MsgBox "可以看R级电影"
    End Select
End Sub
循环作业1:
Sub 输出demo()
    Dim i As Long, 成绩 As Long
    成绩 = InputBox("请输入小明成绩")
    Select Case 成绩
        Case Is >= 90
        MsgBox "奖励100元"
        Case Is < 90
             For i = 1 To 100
             Debug.Print "小明抄写第" & i & "遍,我再也不敢马虎了。"
            Next
     End Select
End Sub
2.
Sub 高斯累加变种()
  Dim i As Long, j As Long, sumV As Long
  For i = 1 To 100
    j = i * 7 And j < 100
    sumV = sumV + j
  Next
      MsgBox sumV
End Sub
3.
Sub 高斯累加变种2()
   Dim i As Long, sumV As Long
   
   sumV = 0
   For i = 1 To 100
       sumV = sumV + (-1) ^ (i + 1) * i
       Debug.Print sumV
   Next
        MsgBox sumV
End Sub
回复 支持 反对

使用道具 举报

发表于 2018-3-22 20:08:43 | 显示全部楼层
  1. '作业1
  2. '年终评定,绩效工资,如果评定为A 每月工资加500,如果为B 每月工资 加200
  3. '如果为C 不变,如果为D 降薪200 如果为E 降薪500。李四基本工资为 5000,
  4. '根据评定计算他来年的工资。用 Select Case
  5. Sub 年终评定()
  6.     Dim 评级 As String
  7.     评级 = InputBox("请输入评级")
  8.    
  9. Select Case 评级
  10.     Case "a"
  11.         MsgBox "加薪500,月薪5500元。"
  12.     Case "b"
  13.         MsgBox "加薪200,月薪5200元。"
  14.     Case "c"
  15.         MsgBox "不加薪,月薪5000元。"
  16.     Case "d"
  17.         MsgBox "减薪200,月薪4800元。"
  18.     Case Else
  19.         MsgBox "减薪500,月薪4500元。"
  20.     End Select
  21. End Sub


  22. '作业2
  23. '胡说电影分级制度演示程序:提示输入年龄,
  24. '如果小于等于 13 岁,提示可以看 G 级电影,如果大于13岁但是小等于16 岁,提问是否有家里大人陪同,
  25. '如果是,可以看PG-13 级, 否则可以看PG 级。如果大于16岁 但小等于18岁,可以看NC-17级 级的电影,
  26. '大于18岁可以看R 级电影。

  27. Sub 电影分级()
  28.     Dim 年龄 As Long, a, 提示 As String
  29.     年龄 = InputBox("请输入年龄")
  30.     提示 = "是否有大人陪同"
  31. Select Case 年龄
  32.      Case Is > 18
  33.         MsgBox "可观看:R级电影"
  34.      Case Is > 16
  35.         MsgBox "可观看:NC-17级"
  36.      Case Is > 13
  37.         a = MsgBox(提示, vbYesNo, "提示:")
  38.         If a = vbYes Then
  39.            MsgBox "可观看:PG-13 级"
  40.            Else
  41.            MsgBox "可观看:PG 级"
  42.         End If
  43.      Case Else
  44.            MsgBox "可观看:G 级电影"
  45.     End Select
  46. End Sub


  47. '作业3

  48. '循环作业1:

  49. '输入小明的考试成绩,如果考试成绩大等于90分,则奖励100元。
  50. '否则,惩罚小明写一百遍 “我再也不敢马虎了”。在立即窗口输出"小明抄写第多少遍"

  51. Sub 小明的考试成绩()


  52.     Dim i As Long, 考试成绩 As Double
  53.       
  54.     考试成绩 = InputBox("请输入成绩")
  55.    
  56.     If 考试成绩 >= 90 Then
  57.    
  58.         MsgBox "奖励100元"
  59.         
  60.         Else
  61.         
  62.         For i = 1 To 100
  63.         
  64.         i = i + 0
  65.                
  66.         Debug.Print "小明抄写第" & i & "遍,我再也不敢马虎了。"
  67.     Next
  68.    
  69.     End If
  70.    
  71. End Sub


  72. '作业4

  73. '循环作业2 :高斯累加的最简单的变种
  74. '
  75. '请编程计算1…100 当中所有7的倍数的累计和


  76. Sub 倍数7的累计和()

  77.     Dim i As Long, sumv As Long

  78.     sumv = 0

  79.      For i = 7 To 100 Step 7
  80.    
  81.        sumv = sumv + i
  82.       
  83.        Debug.Print sumv
  84.       
  85.     Next

  86. End Sub


  87. '作业5
  88. '循环作业3:高斯累加的变种
  89. '编程计算1+2-3+4-5+6… 100 的结果

  90. Sub 高斯累加的变种()

  91.     Dim 奇数和 As Long, 偶数和 As Long, i As Long, h As Long
  92.     奇数和 = 0
  93.     偶数和 = 0
  94.    
  95.      For i = 1 To 100 Step 2
  96.         奇数和 = 奇数和 + i
  97.         Debug.Print 奇数和
  98.         Next
  99.         
  100.     For h = 2 To 100 Step 2
  101.         偶数和 = 偶数和 + h
  102.         Debug.Print 偶数和
  103.         Next
  104.                
  105.         MsgBox "1+2-3+4-5+6… 100 的结果" & 偶数和 - (奇数和 - 2)
  106.       
  107.       

  108. End Sub


  109. '作业6
  110. '循环作业4:不考虑乱输入
  111. ' 输入班级人数,然后依次输入学生成绩。最后输出该班级学生成绩的总分和平均分。

  112. Sub 学生成绩总分和平均分()

  113.     Dim 班级人数 As Long, 学生成绩 As Long, 总分 As Long, i As Long, 平均分 As Double
  114.     总分 = 0
  115.     班级人数 = InputBox("输入人数")
  116.      For i = 1 To 班级人数
  117.         学生成绩 = InputBox("输入成绩")
  118.         总分 = 总分 + 学生成绩
  119.         Debug.Print 总分
  120.         Next
  121.     MsgBox "总分" & 总分
  122.     MsgBox "平均分" & 总分 / 班级人数

  123. End Sub
复制代码
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 入学

本版积分规则

快速回复 返回顶部 返回列表