5-4 类的应用——学生类

原创 2012年03月23日 19:33:01

/* (程序头部注释开始)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:
* 作 者:张传新
* 完成日期:2012 年 3月 21 日
* 版 本 号: 1

* 对任务及求解方法的描述部分
* 输入描述:
* 问题描述:设计一个学生类,包括学号(num)和成绩(score)。建立一个对象数组,

内放5个学生的数据,要求:
(1) 用指针指向数组首元素,输出第1、3、5个学生的信息;
(2) 设计一个函数max,用指向对象的指针作函数参数,在max函数中找出5个

学生中成绩最高者,并输出其学号。

* 程序输出:
* 程序头部的注释结束
*/

#include<iostream>
using namespace std;
class Student
{
public:
    Student(int n,int s):num(n),score(s){}//声明一个有参数的构造函数,用参数的初始化表对数据成员初始化
	void getmessage();
	int getnum();
	float getscore();
private:
	int num;
	float score;
};

void Student::getmessage()//输出学生信息
{
	cout<<num<<" "<<score<<endl;
}

int max(Student *a)//a在接受数组首地址之后,可以作为一个数组访问   
{  
    float max_score=a[0].getscore();//通过成员函数getscore取出私有的数据成员score的值  
    int j=0;  
    for(int i=1;i<5;i++)  //冒泡法
       if(a[i].getscore()>max_score)   
       {  
           max_score=(*(a+i)).getscore();  //“()”的优先级高于“*”
           j=i;  
       }  
       return a[j].getnum();  
}  

int Student::getnum()
{
	return num;
}

float Student::getscore()
{
	return score;
}
			     

int max(Student *a);

int main()
{
	Student a[5]={
	Student(10001,100),
	Student(10001,88.8),
	Student(10001,96.7),
	Student(10001,97.5),
	Student(10001,99)
	};
	//输出第1,3,5个学生的信息
	for(int i=0;i<5;i+=2)
	{
		cout<<"第"<<i+1<<"个学生的信息是:"<<endl;//注意是第i+1个。。。。
		a[i].getmessage();
	}
	//找出个学生中成绩最高者,并输出其学号   
    cout<<"5个学生中成绩最高者的学号为: "<<endl;
	cout<<max(a)<<endl;                                //传递给形式参数a的是数组的首地址   
    system("PAUSE");  
    return 0;  
}  

运行结果:

经验积累:一开始对对象指针不理解,可能是课本看的太少了,于是又浏览了一边,但做起来还是不太顺手,

没办法只能参考一下别人的答案然后才勉强做出来,看来自己还要下功夫,程序中有些是别人的注释,自己

也加了一些注释,以方便自己的理解,总体来说,除了对象指针不太懂,其余的已没有大问题,这两天重点

看一下指针部分吧。。。。。

第四周上机实践项目4——指向学生类的指针

问题及代码 /* * Copyright (c) 2015, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作 者:辛彬 * ...

学生信息管理系统(5)——应用程序与数据库连接

从刚开始做红皮书、五个小例子到SQL入门经典 再到学生信息管理系统,有几个东东经常出现在我的眼前。它们是ODBC 、 OLEDB、ADO、ADODB 既然这么有缘,在不上去和它交个朋友就不是我的脾气了...

从零开始制作H5应用(4)——V4.0,加入文字并给文字加特效

之前,我们分三次完成了我们第一个H5应用的三个迭代版本:V1.0——简单页面滑动切换V2.0——多页切换,透明过渡及交互指示V3.0——加入loading,music及自动切换这已经是一个具有基本表达...

HTML5开发移动web应用——SAP UI5篇(4)

我们在项目中添加Controller,来设定控制器。我们制作一个按钮,点击该按钮后,自动弹出hellow,world的对话框。 修改App.view.xml中代码为如下形式: ...
  • fareise
  • fareise
  • 2016年02月08日 10:54
  • 1373

《HTML5移动开发指南》——笔记4(离线应用)

HTML5新特性:离线应用  ——解决在网络离线的情况下,正常读取和访问web上的文件资源。 JavaScript检查浏览器是否支持离线应用。if(window.applicationCache){ ...
  • kqq0825
  • kqq0825
  • 2016年06月19日 14:48
  • 144

C++第5周任务【任务4】设计一个学生类,包括学号(num)和成绩(score)。建立一个对象数组

/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件名称: ...

2015-第4周项目4-指向学生类的指针

【项目4-指向学生类的指针】 设计一个学生类Student,数据成员包括学号(num)和成绩(score),成员函数根据需要自行设计(建议配备需要的set、get函数,以及必要的输入或输出,给出的代...

第四周项目4 指向学生类的指针

/* *Copyright (c)2015,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:score.cpp *作 者:惠睿 *完成日期:201...

第八周项目(4)—指向学生类的指针

/* *copyright (c) 2016,烟台大学计算机学院 *All rights reserved. *文件名称:hellow.cpp *作者:田甜 *完成日期:2016年5月10日 *版本号...

项目4--指向学生的指针类

/* *程序的版权和版本声明部分: *Copyright(c)2013,烟台大学计算机学院学生 *All rights reserved. *文件名称: *作者:尚振伟 *完成日期:2014年3月30...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:5-4 类的应用——学生类
举报原因:
原因补充:

(最多只允许输入30个字)