OJ积累—对象数组求最大值

来源:互联网 发布:flash软件官方下载 编辑:程序博客网 时间:2024/04/30 05:02
/**copyright (c)2015,烟台大学计算机学院*All rights reserved*文件名称:project.cpp*作者:孙春红*完成日期:2015年6月18日*版本号:v1.0**问题描述:建立一个对象数组,内放n(<10)个学生的数据(学号、成绩),设立一个函数max,用指向对象的指针作函数参数,在max函数中找出n个学生中成绩最高者,并输出其学号。*输入描述:n和n个学生的学号、成绩。*程序输出:成绩最高者的学号和成绩。*/#include <iostream>#include <iomanip>#include <cstring>using namespace std;class Student{private:    string num;    double score;public:    Student (){}    Student(string  n,double s):num(n),score(s){}    void input();    friend void max (Student* ,int);};void Student::input(){    cin>>num>>score;}void max (Student*p ,int n){    int i=0;    string   s_n;    double max_score=0;    for (i=0;i<n;i++)    {       if (p[i].score>max_score)       {           s_n=p[i].num;           max_score=p[i].score;       }    }   cout<<s_n<<" "<<max_score<<endl;}int main(){    void max(Student* ,int);    const int NUM=10;    Student stud[NUM];    int n,i;    cin>>n;    for(i=0; i<n; i++)        stud[i].input();    cout<<setiosflags(ios::fixed);    cout<<setprecision(2);    Student *p=&stud[0];    max(p,n);    return 0;}


运行结果:

0 0
原创粉丝点击