C++ C++;错误4716带有浮点函数
我很难使用float函数返回值。每次我尝试输入一个返回值时,我总是得到未知值的错误,或者您必须输入一个返回值。我很迷路 这是我的节目:C++ C++;错误4716带有浮点函数,c++,floating-point,C++,Floating Point,我很难使用float函数返回值。每次我尝试输入一个返回值时,我总是得到未知值的错误,或者您必须输入一个返回值。我很迷路 这是我的节目: #include <iostream> #include <iomanip> #include <string> using namespace std; string studFirstName; string studLastName; float studExam1; float studExam2; float s
#include <iostream>
#include <iomanip>
#include <string>
using namespace std;
string studFirstName;
string studLastName;
float studExam1;
float studExam2;
float studExam3;
float studScore;
float studAvg;
void getStudName(string& studFirstName, string& studLastName);
void getStudExams(float& studExam1, float& studExam2, float& studExam3);
float calStudAvg(float studExam1, float studExam2, float studExam3);
void displayGrade(string studFirstName, string studLastName, float studavg);
int main ()
{
cout << "Enter Student's First Name:";
cin >> studFirstName;
cout << endl;
cout << "Enter Student's Last Name:";
cin >> studLastName;
cout << endl;
}
void getStudExams(float& studExam1, float& studExam2, float& studExam3)
{
cout << "Enter score for Exam 1:";
cin >> studExam1;
cout << endl;
cout << "Enter score for Exam 2:";
cin >> studExam2;
cout << endl;
cout << "Enter score for Exam 3:";
cin >> studExam3;
cout << endl;
}
float calStudAvg(float studExam1, float studExam2, float studExam3)
{
float studScore = (studExam1 + studExam2 + studExam3);
float studAvg = (studScore/3);
return;
}
void displayGrade(string studFirstName, string studLastName, float studAvg)
{
cout << "Student's First Name:";
getline (cin, studFirstName);
cout << endl;
cout << "Student's Last Name:";
getline (cin, studLastName);
cout << endl;
cout << left << "Student's Final Grade:"
<< right << studAvg << endl;
if (studAvg >= 90)
cout << "Grade = 'A'" << endl;
else if (studAvg >= 80)
cout << "Grade = 'B'" << endl;
else if (studAvg >= 70)
cout << "Grade = 'C'" << endl;
else if (studAvg >= 60)
cout << "Grade = 'D'" << endl;
else
cout << "Grade = 'F'" << endl;
system("pause");
}
#包括
#包括
#包括
使用名称空间std;
字符串studFirstName;
字符串studLastName;
浮动式studExam1;
浮子面积(m2);
浮子体积(m3);
浮点数;
浮子;
void getStudName(string&studFirstName、string&studLastName);
无效GetStudExam1(浮子和studExam1、浮子和studExam2、浮子和studExam3);
浮子计算螺栓AVG(浮子螺栓EXAM1、浮子螺栓EXAM2、浮子螺栓EXAM3);
void displayGrade(string studFirstName、string studLastName、float studavg);
int main()
{
cout>studFirstName;
cout studLastName;
cout studExam1;
cout studExam2;
cout studExam3;
库特
简单地将return放在函数块中不会返回任何内容。您必须明确指定希望该函数返回的值。
就你的情况而言,你似乎想做如下事情:-
return studAvg ;
除此之外,空返回意味着编译器将控件返回给调用方,这意味着您甚至可以在返回类型为void的函数中使用空返回
另外,从数学的角度来看,确保你正在计算的平均分数是从同一个数字中计算出来的。否则你必须使用加权平均。我不知道你到底在想什么问题,问题是你在哪里调用了这些方法?无论如何,试试这个不会显示任何错误,还有你的代码系统(“暂停”)它很慢。它依赖于平台。它不安全。所以请使用其他方法
#include <iostream>
#include <iomanip>
#include <string>
using namespace std;
string studFirstName;
string studLastName;
float studExam1;
float studExam2;
float studExam3;
float studScore;
float studAvg;
void getStudName(string& studFirstName, string& studLastName);
void getStudExams(float& studExam1, float& studExam2, float& studExam3);
float calStudAvg(float studExam1, float studExam2, float studExam3);
void displayGrade(string studFirstName, string studLastName, float studavg);
int main ()
{
cout << "Enter Student's First Name:";
cin >> studFirstName;
cout << endl;
cout << "Enter Student's Last Name:";
cin >> studLastName;
cout << endl;
}
void getStudExams(float& studExam1, float& studExam2, float& studExam3)
{
cout << "Enter score for Exam 1:";
cin >> studExam1;
cout << endl;
cout << "Enter score for Exam 2:";
cin >> studExam2;
cout << endl;
cout << "Enter score for Exam 3:";
cin >> studExam3;
cout << endl;
}
float calStudAvg(float studExam1, float studExam2, float studExam3)
{
float studScore = (studExam1 + studExam2 + studExam3);
float studAvg = (studScore/3);
return studAvg;
}
void displayGrade(string studFirstName, string studLastName, float studAvg)
{
cout << "Student's First Name:";
getline (cin, studFirstName);
cout << endl;
cout << "Student's Last Name:";
getline (cin, studLastName);
cout << endl;
cout << left << "Student's Final Grade:"
<< right << studAvg << endl;
if (studAvg >= 90)
cout << "Grade = 'A'" << endl;
else if (studAvg >= 80)
cout << "Grade = 'B'" << endl;
else if (studAvg >= 70)
cout << "Grade = 'C'" << endl;
else if (studAvg >= 60)
cout << "Grade = 'D'" << endl;
else
cout << "Grade = 'F'" << endl;
}
#包括
#包括
#包括
使用名称空间std;
字符串studFirstName;
字符串studLastName;
浮动式studExam1;
浮子面积(m2);
浮子体积(m3);
浮点数;
浮子;
void getStudName(string&studFirstName、string&studLastName);
无效GetStudExam1(浮子和studExam1、浮子和studExam2、浮子和studExam3);
浮子计算螺栓AVG(浮子螺栓EXAM1、浮子螺栓EXAM2、浮子螺栓EXAM3);
void displayGrade(string studFirstName、string studLastName、float studavg);
int main()
{
cout>studFirstName;
cout studLastName;
cout studExam1;
cout studExam2;
cout studExam3;
cout return;???您可以返回studScore或studAvg。我尝试了这两种方法,但它给了我一个致命错误。您抱怨编译错误。这解决了编译错误。您还没有演示如何调用该方法。
#include <iostream>
#include <iomanip>
#include <string>
using namespace std;
string studFirstName;
string studLastName;
float studExam1;
float studExam2;
float studExam3;
float studScore;
float studAvg;
void getStudName(string& studFirstName, string& studLastName);
void getStudExams(float& studExam1, float& studExam2, float& studExam3);
float calStudAvg(float studExam1, float studExam2, float studExam3);
void displayGrade(string studFirstName, string studLastName, float studavg);
int main ()
{
cout << "Enter Student's First Name:";
cin >> studFirstName;
cout << endl;
cout << "Enter Student's Last Name:";
cin >> studLastName;
cout << endl;
}
void getStudExams(float& studExam1, float& studExam2, float& studExam3)
{
cout << "Enter score for Exam 1:";
cin >> studExam1;
cout << endl;
cout << "Enter score for Exam 2:";
cin >> studExam2;
cout << endl;
cout << "Enter score for Exam 3:";
cin >> studExam3;
cout << endl;
}
float calStudAvg(float studExam1, float studExam2, float studExam3)
{
float studScore = (studExam1 + studExam2 + studExam3);
float studAvg = (studScore/3);
return studAvg;
}
void displayGrade(string studFirstName, string studLastName, float studAvg)
{
cout << "Student's First Name:";
getline (cin, studFirstName);
cout << endl;
cout << "Student's Last Name:";
getline (cin, studLastName);
cout << endl;
cout << left << "Student's Final Grade:"
<< right << studAvg << endl;
if (studAvg >= 90)
cout << "Grade = 'A'" << endl;
else if (studAvg >= 80)
cout << "Grade = 'B'" << endl;
else if (studAvg >= 70)
cout << "Grade = 'C'" << endl;
else if (studAvg >= 60)
cout << "Grade = 'D'" << endl;
else
cout << "Grade = 'F'" << endl;
}