自己记录自己吧 关注:1贴子:235
  • 4回复贴,共1

VB成绩计算类

只看楼主收藏回复

1LVB求过啊啊啊
2L,输入若干学生的成绩,计算平均分和高于平均分的人数,并将这两个数据放入数组的最后
3L,编写函数fun,其功能是计算n门课程的平均分编写函数fun,函数的功能是:根据一个百分制成绩mark(整数),显示对应五级制的评定。条件如下:
Mark大于等于90,显示“优秀”
Mark小于90且大于等于80,显示“良好”
Mark小于80且大于等于70,显示“中等”
Mark小于70且大于等于60,显示“及格”
Mark小于60,显示“不及格”
4L,从键盘输入学生分数,统计学生总人数和各分数段人数,优秀(90-100)、良好(80-89)、中等(70-79)、 及格(60-69)、不及格(60以下)的人数。


IP属地:陕西1楼2012-06-05 13:49回复

    输入若干学生的成绩,计算平均分和高于平均分的人数,并将这两个数据放入数组的最后。
    Private Sub Command1_Click()
    Dim mark() As Integer, i%, n%, aver
    n = InputBox("输入学生的人数")
    ReDim mark(1 To n)
    aver = 0
    For i = 1 To n
    mark(i) = Int(Rnd * 101)
    aver = aver + mark(i)
    Next i
    ReDim Preserve mark(1 To n + 2)
    mark(n + 1) = aver / n
    mark(n + 2) = 0
    For i = 1 To n
    If mark(i) > mark(n + 1) Then mark(n +2) = mark(n + 2) + 1
    Next i
    For i = 1 To n
    Print "mark("; i; ")=";mark(i)
    Next i
    Print "平均分="; mark(n + 1), "高于平均分人数="; mark(n + 2)
    End Sub


    IP属地:陕西2楼2012-06-05 13:50
    回复

      编写函数fun,函数的功能是:根据一个百分制成绩mark(整数),显示对应五级制的评定。条件如下:
      Mark大于等于90,显示“优秀”
      Mark小于90且大于等于80,显示“良好”
      Mark小于80且大于等于70,显示“中等”
      Mark小于70且大于等于60,显示“及格”
      Mark小于60,显示“不及格”
      方法一:用if语句来实现。
      Private Function fun(mark As Integer) As String
      If mark >= 90 Then
      fun = "优秀"
      ElseIf mark >= 80 Then
      fun = "良好"
      ElseIf mark >= 70 Then
      fun = "中等"
      ElseIf mark >= 60 Then
      fun = "及格"
      Else
      fun = "不及格"
      End If
      End Function
      Private Sub Command1_Click()
      Print fun(88)
      End Sub
      方法二:用case语句来实现。
      Private Function fun(mark As Integer) As String
      Select Case mark
      Case Is >= 90
      fun = "优秀"
      Case Is >= 80
      fun = "良好"
      Case Is >= 70
      fun = "中等"
      Case Is >= 60
      fun = "及格"
      Case Else
      fun = "不及格"
      End Select
      End Function


      IP属地:陕西3楼2012-06-05 13:53
      回复

        从键盘输入学生分数,统计学生总人数和各分数段人数,优秀(90-100)、良好(80-89)、中等(70-79)、 及格(60-69)、不及格(60以下)的人数。
        Private Sub Form_Click()
        Dim score%, n1%, n2%, n3%, n4%, n5%
        msg = "请输入分数([0-100],<0结束)"
        msgtitile = "输入数据"
        score = Val(InputBox(msg, msgtitle))
        While score >= 0 And score <= 100
        total = total + 1
        Select Case score
        Case Is >= 90
        n1 = n1 + 1
        Case Is >= 80
        n2 = n2 + 1
        Case Is >= 70
        n3 = n3 + 1
        Case Is >= 60
        n4 = n4 + 1
        Case Else
        n5 = n5 + 1
        End Select
        score = Val(InputBox(msg, msgtitle))
        Wend
        Print n1, n2, n3, n4, n5, total
        End Sub


        IP属地:陕西4楼2012-06-05 13:54
        回复

          编写函数fun,其功能是计算n门课程的平均分。
          Function fun(mark() As Integer) As Single
          Dim sum As Double, i As Integer
          sum = 0
          For i = LBound(mark) To UBound(mark)
          sum = sum + mark(i)
          Next
          fun = sum / (UBound(mark) - LBound(mark) + 1)
          End Function
          Private Sub Command1_Click()
          Dimp() As Integer
          n =InputBox("学生人数")
          ReDim p(1 To n)
          Fori = 1 To n
          p(i) = Int(Rnd * 100 + 1)
          Next i
          Print fun(p)
          End Sub
          


          IP属地:陕西5楼2012-06-05 13:55
          回复