距离计算器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了距离计算器相关的知识,希望对你有一定的参考价值。
我在C#中创建了一个计算器,该计算器根据用户输入的速度和行进小时数显示行进距离,并显示到列表框的距离,希望它以递增的值显示,但是只是重复计算出的值。例如,我输入10英里的1 MPH,希望列表框显示:
1小时后,距离为1英里。
2小时后,距离为2英里。
3小时后,距离为3英里。
4小时后,距离为4英里。
5小时后,距离为5英里。
6小时后,距离为6英里。
7小时后,距离为7英里。
8小时后,距离为8英里。
9小时后,距离为9英里。
10小时后,距离为10英里。
但是列表框显示:
10小时后,距离为10英里。
10小时后,距离为10英里。
10小时后,距离为10英里。
10小时后,距离为10英里。
10小时后,距离为10英里。
10小时后,距离为10英里。
10小时后,距离为10英里。
10小时后,距离为10英里。
10小时后,距离为10英里。
10小时后,距离为10英里。
private void button1_Click(object sender, EventArgs e)
{
int hours;
double distance;
int speed;
int count = 1;
if (int.TryParse(speedTextBox.Text, out speed))
{
if (int.TryParse(hoursTextBox.Text, out hours))
{
while (count <= hours)
{
distance = speed * hours;
distanceListBox.Items.Add("After hour " + hours
+ ", the distance is " + distance);
count = count + 1;
}
}
else
{
MessageBox.Show("Incorrect value for hours");
}
}
else
{
MessageBox.Show("Incorrect value for speed");
}
}
private void exitButton_Click(object sender, EventArgs e)
{
this.Close();
}
答案
您应该在计算中使用count
而不是hours
,在这种情况下for
比while
更实用。for (count = 1; count <= hours; count++)
{
distance = speed * count;
distanceListBox.Items.Add("After hour " + count + ", the distance is " + distance);
}
以上是关于距离计算器的主要内容,如果未能解决你的问题,请参考以下文章