error C2440: “=”: 无法从“int (__cdecl *)(void)”转换为“int”

#include<iostream>#include<string>usingnamespacestd;classstudent{public:student(){sum... #include <iostream>
#include <string>
using namespace std;
class student{
public:
student (){
sum=0;
num=0;
deg=0;
name="0";
no=0;
}
void set();
void disp();
void add();
static int avg();
private:
int no;
string name;
int deg;
static int sum;
static int num;
protected:
};
void student::set()
{
cout<<"输入学号、姓名、成绩:";
cin>>no>>name>>deg;
}
void student::disp()
{
cout<<"学号:"<<no<<endl
<<"姓名:"<<name<<endl
<<"成绩:"<<deg<<endl;
}
void student::add(){
sum=sum+deg;
num++;
}
int student::avg(){
int avg;
avg=sum/num;
return avg;
}
void main ()
{
int sum=0,avg;
student a[5];
for (int i=0;i<5;i++)
a[i].set();
for (int i=0;i<5;i++)
a[i].add();
avg=a[4].avg;
for (int i=0;i<5;i++)
a[i].disp();
cout<<"他们的总成绩为:"<<avg;
system ("pause");
}
求大神告知如何修改,这个程序是要算学生的平均成绩
展开
 我来答
励若08t
推荐于2018-03-22 · TA获得超过1222个赞
知道小有建树答主
回答量:366
采纳率:0%
帮助的人:234万
展开全部
static int sum;
static int num;
protected:
};
加上下面两行:
int student::sum = 0;
int student::num = 0;

avg=a[4].avg;
改为下面:
avg=a[4].avg();
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
s605954350
2013-04-16 · TA获得超过353个赞
知道小有建树答主
回答量:212
采纳率:0%
帮助的人:208万
展开全部
avg=a[4].avg 修改为avg=a[4].avg()
因为a[4]是个对象,a[4]的avg是它的成员函数不是成员变量
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
thankyou1972
2013-04-16
知道答主
回答量:3
采纳率:0%
帮助的人:4446
展开全部
#include<iostream>
#include<string>
using namespace std;
class Student{
public:
void get_value() {
int num;
string name;
*(你的se是什么类型) se;
cin>>num>>name>>se;
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Roxxette
2013-04-16 · TA获得超过828个赞
知道小有建树答主
回答量:1341
采纳率:0%
帮助的人:821万
展开全部
a[4].avg是student的成员函数,怎么能给main中的int变量avg赋值呢?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式