您的位置:首页 > 其它

第八周项目三指向学生类的指针

2016-04-23 17:39 162 查看
/*

*Copyright (c) 2016,烟台大学计算机学院

*All rights reserved.

*文件名称 :

*作 者 : 徐聪

*完成日期 : 2016年4月23号

*版 本 号 : v1.0

* 设计一个学生类Student,数据成员包括学号(num)和成绩(score),成员函数根据需要自行设计(建议配备需要的set、get函数,以及必要的*输入或输出,给出的代码中也可以找到需要成员函数的线索)。在main函数中,要做到

*  建立一个对象数组,通过初始化,设置5个学生的数据;

* 用指针指向数组首元素,输出第1、3、5个学生的信息;

* 设计一个函数int max(Student *arr);,用指向对象的指针作函数参数,在max函数中找出5个学生中成绩最高者,并返回值其学号。

*/

程序代码:

#include <iostream>
using namespace std;
struct Student
{
//private:
int num;
double score;
public:
Student(int x,double y);
void out();
};
Student::Student(int x,double y)
{
num=x;
score=y;
}
void Student::out()
{
cout<<"学号为:"<<num<<"   "<<"成绩为:"<<score<<endl;
}
int max(Student *arr)
{
int i,k;
double max1=arr->score;
for( i=0;i<5;i++)
{
if((arr+i)->score>max1)
{
max1=(arr+i)->score;
k=i;
}
}
for(i=0;i<5;i++)
{
if(k==i)
{
return (arr+i)->num;
}
}
}
int main()
{
int i;
Student stud[5]=
{
Student(101,78.5),Student(102,85.5),Student(103,100),
Student(104,98.5),Student(105,95.5)
};
for(i=0;i<5;i+=2)
{
stud[i].out();
}
cout<<"5个学生中成绩最高者的学号为:"<<max(stud);
return 0;
}
结果运行

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: