我正在尝试用c ++创建一个简单的程序来计算10个数字中的平均值,总和,最大值和最小值。我想允许用户单击4来停止程序。这是我需要帮助的代码的一部分:
void printOut(int max, int min, int avr)
{
int run = true;
short choice;
while(run == true)
{
cout<<endl<<"1 = mean "<<endl;
cout<<"2 = max/min "<<endl;
cout<<"3 = sum "<<endl;
cout<<"4 = quit "<<endl;
cin >> choice;
if (choice == 1)
{
cout<<endl<<"Mean = "<<avr<<endl;
}
else if (choice == 2)
{
cout<<endl<<"Max = "<<max<<endl<<"Min = "<<min<<endl;
}
else if (choice == 3)
{
cout<<endl<<"Sum = "<<sum<<endl;
}
else if (choice == 4)
{
run == false;
}
else
{
cout << "Error";
}
}
}
答案 0 :(得分:0)
有一种非常简单明了的方法可以解决您的问题。只是 设置无限循环并使退出条件,或直接在while语句中设置此条件。我在此代码段中使用了最后一种方法。
另外,我强烈建议您使用开关盒系统来控制输入。它会使你的代码更具可读性。
最后,您的代码应如下所示:
short choice;
while(choice != 4)
{
...
cin >> choice;
...
switch(choice)
{
...
case 4:
cout << "Exit";
...
}
}
答案 1 :(得分:-1)
您正在使用run ==
而不是run =
。 1 = declare
,2 == test
。
另外,不要使用if(run==true)
而只使用if(run)
,因为如果run
为真,它将显示为true
,反之亦然,只要它是bool
1}}。