| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 735 人关注过本帖
标题:[求助]学生类,对象指针,怎么用
只看楼主 加入收藏
bull520
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-5-28
收藏
 问题点数:0 回复次数:2 
[求助]学生类,对象指针,怎么用

编写一个程序,输入3个学生的英语与计算机成绩,并按总分从高到低排序。要求设计一个学生类student,其定义如下:
class Student
{
public:
void getscore();//获取一个学生的成绩
void dispaly();//显示一个学生的成绩
void sort(Student *);//将若干个学生按总分从高到低排序
private:
int English,Computer,total;

};

下面是我写的程序,运行不通过,发现多处错误!
想了一个上午和下午,实在不知道怎么改,希望热心人士帮忙研究一下,给点提示,谢绝直接给代码!

// 这是使用应用程序向导生成的 VC++
// 应用程序项目的主项目文件。

#include "stdafx.h"
#include "iostream.h"
#using <mscorlib.dll>
#include <tchar.h>
using namespace System;

class Student
{
public:
void getscore();//获取一个学生的成绩
void dispaly();//显示一个学生的成绩
void sort(Student *stu[]);//将若干个学生按总分从高到低排序
private:
int English,Computer,total;
};
//上面的语句除了void sort(Student *stu[]);以外绝对不能改,有限定。
void Student::getscore()
{
cout<<"请输入英语成绩:";
cin>>English;
cout<<"请输入计算机成绩:";
cin>>Computer;
total=English+Computer;
}

void Student::dispaly()
{
sort(Student *stu[]); //这里有问题。我究竟校改怎么写这个语句
for(int i=0;i<3;i++)
cout<<stu[i]->total<<endl;
}

void Student::sort(Student *stu[]) //用选择法对3个学生的总成绩从高到低排序
{
int max,*temp;
for(int m=0;m<2;m++)
{
max=m;
for(int n=m+1;n<3;n++)
if(stu[m]->total<stu[n]->total) max=n;
if(max!=m)
{
temp=stu[m];
stu[m]=stu[n];
stu[n]=temp;
}
}

}

// 这是此应用程序的入口点
int _tmain(void)
{
Student *stu[3]; //指向对象的指针数组
Student *pstu;
for(int i=0;i<3;i++)
{
pstu=new Student; //动态分配一个Student对象
pstu->getscore();
stu[i]=pstu;
}
stu->dispaly(); //这里不能这么望问吧?有三个对象,只写一个语句,那需要什么方法?
return 0;
}

搜索更多相关主题的帖子: 指针 对象 学生 
2006-11-09 17:12
litcatyx
Rank: 1
等 级:新手上路
威 望:1
帖 子:151
专家分:0
注 册:2006-10-27
收藏
得分:0 
这个程序很失败!

如果display只显示一个学生的成绩,就把display()中的 sort(Student *stu[]);去掉
如果display显示数组中所有学生的成绩,display也应该和sort一样有一个Student *stu[]参数。

PS:
//上面的语句除了void sort(Student *stu[]);以外绝对不能改,有限定
Why,
这难道是你们老师留的作业
如果我是公司老总,谁要是给我设计出Student这样的类,我肯定炒了他

2006-11-10 12:02
litcatyx
Rank: 1
等 级:新手上路
威 望:1
帖 子:151
专家分:0
注 册:2006-10-27
收藏
得分:0 
如果display只显示一个学生的成绩,就把display()中的 sort(Student *stu[]);去掉


循环也去掉 ^_^

2006-11-10 12:06
快速回复:[求助]学生类,对象指针,怎么用
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.027916 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved