You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Visual Studio 2019 VB开发成绩计算器,Add按钮求和计数代码如何编写

VB.Net成绩统计工具Add按钮实现方案

你可以直接使用下方代码替换Button2_Click的空方法体即可实现需求,代码内置了输入合法性校验,避免用户输入非数字内容导致程序崩溃:

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
    ' 校验输入内容是否为合法整数
    Dim inputScore As Integer
    If Not Integer.TryParse(txtscore.Text.Trim(), inputScore) Then
        MessageBox.Show("请输入有效的整数成绩", "输入错误", MessageBoxButtons.OK, MessageBoxIcon.Error)
        txtscore.SelectAll()
        Return
    End If

    ' 可选校验:限制成绩范围在0-100,不需要可以删除这段
    If inputScore < 0 OrElse inputScore > 100 Then
        MessageBox.Show("成绩需在0-100区间内", "输入错误", MessageBoxButtons.OK, MessageBoxIcon.Error)
        txtscore.SelectAll()
        Return
    End If

    ' 累加总和、更新录入数量
    ScoreTotal += inputScore
    ScoreCount += 1

    ' 计算平均值
    Dim averageScore As Decimal = If(ScoreCount > 0, ScoreTotal / ScoreCount, 0)

    ' 给只读文本框赋值
    txtscoretotal.Text = ScoreTotal.ToString()
    txtscorecount.Text = ScoreCount.ToString()
    ' 平均值默认保留2位小数,可自行修改F后的数字调整保留位数
    txtaverage.Text = averageScore.ToString("F2")

    ' 清空输入框,方便下次录入
    txtscore.Text = String.Empty
    txtscore.Select()
End Sub

可选优化建议

  • 原代码中定义的全局变量Average As Integer不需要可以删除,平均值无需全局存储,每次录入后临时计算即可
  • 计数变量ScoreCount建议修改为Integer类型,更符合计数场景的使用习惯
  • 如果不需要保留小数的平均值,可将averageScore的类型改为Integer,赋值时使用Math.Round做四舍五入处理即可

内容的提问来源于stack exchange,提问作者user17220648

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 10:27:02