繁体   English   中英

如何找到数组的最小和最大元素?

[英]How to find the minimum and maximum element of the array?

private void button1_Click(object sender, EventArgs e)
{
    int[] m = new int[1000];
    int n = textBox1.Lines.Lenght;
    int i;
    int k = 0;
    int sum = 0;
    int product = 1;
    int average = 0;

    for (i = 0; i < n; i++)
    {
        try 
        {
            m[k] = Convert.ToInt32(textBox1.Lines[i]);
            sum = sum + m[k];
            product = product * m[k];
            average = sum / n;
        }     
        catch 
        {
            MessangeBox.Show("Буквы нельзя!!");
            k++;
        }
    }

    label10.Text = n.ToString();
    label11.Text = sum.ToString();
    label12.Text = product.ToString();
    label13.Text = average.ToString();     
}
using System;

using System.Collections.Generic;

using System.Linq;



int[] m = new int[1000];

// fill in the array here .....

int min = m.Min(); // find the minimum

int max = m.Max(); // find the maximum

以下内容应有所帮助:

private void button1_Click(object sender, EventArgs e)
{
    int[] m = new int[1000];
    int n = textBox1.Lines.Lenght;
    int i;
    int k = 0;
    int sum = 0;
    int product = 1;
    int average = 0;
    int min = Int32.MaxValue;   // will hold min value
    int max = Int32.MinValue;   // will hold max value

    for (i = 0; i < n; i++)
    {
        try 
        {
            m[k] = Convert.ToInt32(textBox1.Lines[i]);
            sum = sum + m[k];
            product = product * m[k];
            if (m[k] < min)
              min = m[k];
            if (m[k] > max)
              max = m[k];
        }     
        catch 
        {
            MessageBox.Show("Буквы нельзя!!");
            k++;
        }
    }
    average = sum / n;  //Computing average here is more efficient
    label10.Text = n.ToString();
    label11.Text = sum.ToString();
    label12.Text = product.ToString();
    label13.Text = average.ToString();     
}

注意:如果数组为空,则可能不希望将Int32.MaxValue和Int32.MinValue作为默认的最小值和最大值。 您将需要分别处理这种情况。

暂无
暂无

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

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