构建数组应用计算器,但需要使用 Double,因为它需要十进制数字

问题描述 投票:0回答:1

我刚刚学习 C# 并使用 Visual Studio 为课程构建应用程序。我必须构建一个应用程序,需要为一个按钮存储 5 个数字,然后使用第二个按钮计算平均值并与 5 个数字一起呈现。我无法确定“商店”按钮、“显示”按钮和文本显示区域的代码。该应用程序不断要求输入 double[] 的值,并且只会显示平均结果,如果用户没有在输入数字所需的任何文本区域中输入值,我还需要弹出一个消息框可以计算一下。

这是应用程序设计的图像以及下面的代码......

App design look for where text areas are and buttons being referred

这是我的代码...

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }

    private void btnStoreScores_Click(object sender, EventArgs e)
    {
        //As decimal values will be used to calculate the "double" function has been used to declare the value size to be entered.
        double[] numbers = new double[5];

        numbers[0] = double.Parse(txtScore1.Text);
        numbers[1] = double.Parse(txtScore2.Text);
        numbers[2] = double.Parse(txtScore3.Text);
        numbers[3] = double.Parse(txtScore4.Text);
        numbers[4] = double.Parse(txtScore5.Text);

        //The below will ask for an input to be made into the missing text box.
        MessageBox.Show("Please enter a value in " + numbers.ToString());
    }
    //The below button function will calculate the average score from the stored numbers.
    private void btnDisplayScores_Click(object sender, EventArgs e)
    {
        //Here we use Double to allow decimal values in the sum function.
        double[] numbers = new double[5];
        double sum = 0;
        double average = 0;

        numbers[0] = double.Parse(txtScore1.Text);
        numbers[1] = double.Parse(txtScore2.Text);
        numbers[2] = double.Parse(txtScore3.Text);
        numbers[3] = double.Parse(txtScore4.Text);
        numbers[4] = double.Parse(txtScore5.Text);

        //a foreach loop has been used to allow the double average to be calculated.
        foreach (double value in numbers)
        {
            sum += value;
        }

        average = sum / numbers.Length;

        txtDisplay.Text = numbers.ToString() + Environment.NewLine + "The average of the exam scores is " + average.ToString();
    }
}

我最初有一个 myDoubles,但这与 sum 函数冲突。我一直在绞尽脑汁地思考如何正确编码 MessageBox 以及 double[] 的问题。我尝试过 double[,] 但有一个语法错误,我只是在学习如何正确调试。

如果我应该看看“浮动”超过两倍,我对此持开放态度,并且希望能帮助我做到这一点。

c# arrays double messagebox
1个回答
0
投票

您可以使用字符串生成器:

    StringBuilder sb = new StringBuilder();
    foreach (var number in numbers)
    {
        sb.Append(number.ToString());
    }
    sb.Append(Environment.NewLine);
    sb.Append("The average of the exam scores is " + average.ToString());

    txtDisplay.Text = sb.ToString();
© www.soinside.com 2019 - 2024. All rights reserved.