求C++ 高手帮忙~急急急急!
来源:百度知道 编辑:UC知道 时间:2024/09/24 04:31:15
小弟初学者, 不知道自己写的错在哪里,请高手指点
#include<iostream>
#include<iomanip>
#include<string>
using namespace std;
void Greeting ();
void GetName (string &);
void ReadScores (double ,int&);
void ReportNoScores (string &);
double Calculation (double,double&);
char LetterGrade (double&);
void ReportData (string, double, double);
void Farewell();
int main()
{
string name;
char grade;
double total, average;
int count;
Greeting ();
GetName (name);
while (name != "")
{
ReadScores (total, count);
if (count ==0)
ReportNoScores (name);
else
{
average = Calculation (count, total);
grade = LetterGrade (average);
ReportData (name, average, grade);
}
GetName (name);
}
Farewell ();
return 0;
}
void Greeting ()
{
/*整个程序最大的两个问题一个是声明函数与实现函数时表有问题,多处严重不匹配,这个在编译时是检查不出来的,只能在链接时才会检查出来,然后就是字符串和字符的区别没弄清楚,当然还有一些小问题,比如不区分大小写之类的~~~修改后的程序如下*/
#include<iostream>
#include<iomanip>
#include<string>
using namespace std;
void Greeting ();
void GetName (string &);
void ReadScores (double &,int&);
void ReportNoScores (string &);
double Calculation ( double total, double count, double &average) ;
char LetterGrade (double&);
void ReportData (string, double, double);
void Farewell();
int main()
{
string name;
char grade;
double total, average;
int count;
Greeting ();
GetName (name);
while (name != "")
{
ReadScores (total, count);
if (count ==0)
ReportNoScores (name);
else
{
average = Calculation (total, count, average);
grade = LetterGrade (average);
ReportData (name, average, grade