当我运行程序时,它结束了平均值,但它不会循环!有谁看到我做错了,我指出了正确的方向循环不工作
#include <iostream>
#include <iomanip> using namespace std;
//function prototypes
void getTestScores(double &score1, double &score2, double &score3);
double calcAverage(double &score1, double &score2, double &score3);
void displayAverage(double avg);
int main()
{
//declare variables
double score1 = 0.0;
double score2 =0.0;
double score3 = 0.0;
double avg = 0.0;
//display average in fixed-point notation
getTestScores(score1,score2,score3);
calcAverage(avg);
displayAverage(avg);
//enter scores
while (avg != -1);
{
cout << "score 1 (negative number to stop): ";
cin >> score1;
cout << "Enter score 2(negative number to stop): ";
cin >> score2;
cout << "Enter score 3(negative number to stop): ";
cin >> score3;
calcAverage(score1, score2, score3);
displayAverage(avg);
return 0;
}
} //end of main function
//*****function prototypes*****
void getTestScores(double &score1, double &score2, double &score3)
{
cout << "Enter score 1(negative numberto stop): ";
cin >> score1;
cout << "Enter score 2(negative number to stop): ";
cin >> score2;
cout << "Enter score 3(negative number to stop): ";
cin >> score3;
} //end
double calcAverage (double &score1, double &score2, double &score3)
{
double average = 0.0;
average = calcAverage(score1, score2, score3);
return average;
} //end of clacAverage
void displayAverage(double avg)
{
cout << fixed << setprecision(1);
cout << "Average: " << avg << endl;
} //end
使用4位代码的每个语句之前,或只选择整个代码,点击'{}'本编辑器选项卡上。 – Mahesh 2011-04-21 06:48:42
为什么你需要'calcAverage'中的三个参数,就像这个'double calcAverage(double&score1,double&score2,double&score3);'但是给出这样一个参数'calcAverage(avg);'?我不是一个C++的男孩我很抱歉,如果我问的是noob.Also我认为你应该在(平均!= -1)' – Bastardo 2011-04-21 06:52:57
(平均!= -1)之后移除';':不要直接比较浮点数(请参阅http://how-to.wikia.com/wiki/Howto_compare_floating_point_numbers_in_the_C_programming_language) – stefaanv 2011-04-21 07:08:44