第八周项目三指向学生类的指针
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个学生中成绩最高者,并返回值其学号。
*/
程序代码:
*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; }结果运行
相关文章推荐
- java event listeners and dispatcher
- 进度更新
- [JavaWeb]jsp图片ajax异步上传,利用ajaxfileupload
- ACM2-1003
- C#第7周泛型类的使用
- ${}
- ios UITableView实现单击提示,滑动删除,多选行等操作
- 【NOIP practice】BSOJ 1709 守望者的烦恼 矩阵快速幂优化递推
- The 13th Zhejiang Provincial Collegiate Programming Contest
- Java 集合转换(数组、List、Set、Map相互转换)
- 报错:No enclosing instance of type ExtendsDemo is accessible.
- OpenCv学习笔记---OpenCv中支持向量机模块SVM------源代码分析
- 345. Reverse Vowels of a String 【E】
- 一生必看的100本书
- JAVA redis 连接
- 字符串反转引发的char str[]="abc"和char *str="abc"思考
- [BZOJ1467]Pku3243 clever Y(扩展BSGS)
- 有符号十六进制转十进制 c++
- java web第三课:BOM与DOM
- 开发常用一些命令参数1