第四周 课后实践:项目四——指向学生类的指针

问题及代码:

/* 
* Copyright (c) 2014, 烟台大学计算机学院 
* All rights reserved. 
* 文件名称:Project4.cpp 
* 作    者:陈旭 
* 完成日期:2015年4月1 日 
* 版 本 号:v1.0 
* 
* 问题描述:设计一个学生类student,按要求输出学生信息 
* 输入描述:略 
* 程序输出:略 
*/ 
#include <iostream>

using namespace std;
class Student
{
private:
    int num;
    double score;

public:
    Student(int n,double s)
    {
        num=n;
        score=s;
    }
    void get_score();
    int getnum()
    {
        return num;
    }
    double getscore()
    {
        return score;
    }
};

void Student::get_score()
{
    cout<<num<<"   "<<score<<endl;
}

int max(Student *arr);

int main()
{
    Student stud[5]=
    {
        Student(101,78.5),Student(102,85.5),Student(103,100),Student(104,98.5),Student(105,95.5)
    };

    for(int i=0; i<5; i+=2)
    {
        cout<<"第"<<i+1<<"个学生:";
        stud[i].get_score();
    }

    cout<<"5个学生中成绩最高者的学号为: "<<max(stud);
    return 0;
}

int max(Student *arr)
{
    double  max_score=arr[0].getscore();
    int k=0;
    for(int i=1; i<5; i++)
        if(arr[i].getscore()>max_score)
        {
            max_score=arr[i].getscore();
            k=i;
        }
    return arr[k].getnum();
}


 

 

运行结果:

 

学习心得:

     对于数组内两个成员的调用,最好在类的声明里就分开声明调用,一开始就未分开,到后面单个取用分数或是学号的时候就没办法了。下次一定要注意。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值