繁体   English   中英

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

[英]Computing Average, High Score, Low Score using foreach loop

我有以下代码。 我将如何使一位和两位数的百分比同时起作用并且不会引起异常?

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);
}

这次您的问题在代码的另一部分。 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。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM