使用foreach循环计算平均,高分,低分

本文关键字:高分 低分 foreach 循环 计算 使用 | 更新日期: 2023-09-27 17:52:39

我有以下代码。我如何使一位数和两位数的百分比工作而不引起异常?

private void calcStats()
{
    string value;
    int value2;
    int total = 0;
    decimal adverage;
    decimal high;
    decimal low;
    lblHigh.Text = Convert.ToString(0);
    foreach (string itemInList in lstBox.Items)
    {
        value = (itemInList.Substring(50, 3));
        value2 = int.Parse(value);
        total += (value2);
    }
   adverage = total/(lstBox.Items.Count);
   lblAdverage.Text = Convert.ToString(adverage);
}

使用foreach循环计算平均,高分,低分

这次的问题出在代码的另一部分。在你的btnAdd_Click方法中,你有这样的代码片段:

    //Add the data elements to the row
    row = name.ToString().PadRight(25);
    row += ID.ToString().PadRight(25);
    row += score.ToString();

你也需要填充分数:

    //Add the data elements to the row
    row = name.ToString().PadRight(25);
    row += ID.ToString().PadRight(25);
    row += score.ToString().PadRight(3);

如果没有PadRight(3),您的个位数和两位分数将抛出异常,因为该个位数位于第50位,并且该个位数之后没有任何可读的内容。通过填充它,你知道有所有3个可能的分数(个位数,两位数,三位数)。parse函数会处理空格,然后给出数字,不管它是1、10还是100。