建立一个对象数组,内放5个学生的数据,设立一个max函数,用指向对象的指针做函数参数,在max中

找到成绩最好的,输出其学号我的程序哪有问题,求指教#include<iostream>usingnamespacestd;classStudent{public:Stud... 找到成绩最好的,输出其学号
我的程序哪有问题,求指教

#include <iostream>
using namespace std;
class Student
{
public:
Student(int, int);
void max(Student* s);
private:
int num;
int scor;
};
Student::Student(int n, int s):num(n),scor(s){}
void Student::max(Student* s)
{
int i, max_num=0, max_scor=0;
for(i=0;i<5;++i)
if((s+i)->scor > max_scor)
{
max_scor=(s+i)->scor;
max_num=(s+i)->num;
}
cout<<""成绩最高者的学号为""<<max_num<< endl;
}
int main()
{
Student s[5]=
{
Student(1, 78),
Student(2, 92),
Student(4, 81),
Student(4, 89),
Student(5, 68)
};
Student *p;
p=&s[0];
max(p);
return 0;
}
展开
 我来答
IT孤鹜
推荐于2018-04-13 · TA获得超过4196个赞
知道大有可为答主
回答量:3960
采纳率:71%
帮助的人:3497万
展开全部
#include <iostream>
using namespace std;
class Student
{
public:
Student(int, int);
void max(Student* s);
private:
int num;
int scor;
};
Student::Student(int n, int s):num(n),scor(s){}
void Student::max(Student* s)
{
int i, max_num=0, max_scor=0;
for(i=0;i<5;++i)
if((s+i)->scor > max_scor)
{
max_scor=(s+i)->scor;
max_num=(s+i)->num;
}
cout<<"成绩最高者的学号为"<<max_num<< endl;
}
int main()
{
Student s[5]=
{
Student(1, 78),
Student(2, 92),
Student(4, 81),
Student(4, 89),
Student(5, 68)
};
Student *p;
p=&s[0];
p->max(p); //max是类里的方法
return 0;
}
moonworst
2013-04-10
知道答主
回答量:58
采纳率:0%
帮助的人:36.2万
展开全部
max是类的方法,不能这么用吧?话说为啥要把他变成成员函数呢?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式