我不明白为什么我没有得到总数。
问题是
使用以下规范定义班级学生:私人 班级学生的成员admno整数sname 20字符eng。
math,science float total float ctotal()一个计算eng +的函数 数学+科学与浮动返回类型。公共成员的职能 class student Takedata()函数类的公共成员函数 学生Takedata()函数float ctotal()一个函数来计算 英语+数学+科学与floa返回类型。公共成员函数 班级学生Takedata()函数
#include<stdio.h>
#include<iostream>
using namespace std;
class Student
{
private:
int admno;
char sname[20];
float english,maths,science;
float total;
float ctotal()
{
total=(english+maths+science);
return(total);
}
public:
void Takedata()
{
cout<<"Enter the value of admno:";
cout<<" sname :";
cout<<"eng :";
cout<<"science:";
cout<<"maths:";
cin>>admno;
cin>>sname;
cin>>english;
cin>>science;
cin>>maths;
}
Student(): total(0.0) //constructor
{
}
friend float func(Student);
void Showdata()
{
cout<<"adm no:"<<admno;
cout<<"sname:"<<sname;
cout<<"eng"<<english;
cout<<"science"<<science;
cout<<"maths"<<maths;
}
};
float func(Student t)
{
t.total;
return t.total;
}
int main()
{
Student s1;
s1.Takedata();
s1.Showdata();
cout<"total is:";
cout<<func(s1);
}
答案 0 :(得分:0)
将t.total
替换为
t.ctotal()
float func(Student t)
{
t.total;
return t.total;
}
答案 1 :(得分:0)
func应该像这样定义
float func(Student t)
{
return t.ctotal();
}
也编辑
cout<"total is:";
到
cout<<"total is:";
答案 2 :(得分:0)
需要将total或method ctotal()设为public。 然后从
中调用其中一个public:
float total;
float func(Student t)
{
t.total;
return t.total;
}
OR 上市: float ctotal(){ 总=(英文+数学+科学); 返回(总); }
float func(Student t)
{
return t.ctotal();
}