我想知道如果有几个同样长度的人,我怎么能把所有最长的人都拿走?
如果只有一个人是最长的,那么它工作正常,名字最长的人将显示在MessageBox中。但是如果有多个人是最长的,那么这段代码将不起作用......
public partial class Form1 : Form
{
int[] längdArray = new int[5];
string[] namnArray = new string[5];
int namn = 0;
int längd = 0;
public Form1()
{
InitializeComponent();
}
private void btnVisa_Click(object sender, EventArgs e)
{
int längst = 0;
int längdvärdet = 0;
int längdindex = 0;
string name = textBox1.Text;
namnArray[namn] = name;
namn = namn + 1;
textBox1.Clear();
int centimeter = int.Parse(textBox2.Text);
längdArray[längd] = centimeter;
längd++;
textBox2.Clear();
listBox1.Items.Add(name + " " + centimeter + " centimeter ");
if (längd == 5)
{
btnVisa.Enabled = false;
foreach (int antalLängder in längdArray)
{
if (antalLängder > längst)
{
längst = antalLängder;
längdvärdet = längdindex;
}
längdindex++;
}
string test = namnArray[längdvärdet]
MessageBox.Show(" Längsta person är " + test + " som är " + längst + " centimeter lång ");
}
答案 0 :(得分:0)
定义当有多个人时您希望应用呈现的行为。应该全部显示,还是任何一个或其他显示?尝试使用对象构造,它们更容易操作。 C#是一种面向对象的语言。将名称和长度放在一个结构中然后使用LINQ。