#include
using namespace std;
class CScore
{
public:
CScore(int a)
{
num=a;
}
void INPUT()
{
cout<<"\n请依次输入名称、三科得分\n";
cin>>name>>score[0]>>score[1]>>score[2];
}
void Everage()
{
avg=(float)(score[0]+score[1]+score[2])/3;
}
float PRINT()
{
cout<<"\n学号为 "<
}
void MXA(float *p,int n)
{
for(int i=1;i
*p=*(p+i);
cout<<"\n最高平均分为 "<<*p<<"\n";
}
~CScore()
{
cout<<"\n程序运行完毕!\n";
}
private:
int num,score[3];
char name[30];
float avg;
};
int main(void)
{
int n,i,temp;
float *m;
CScore *p;
cout<<"键入学生数量\n";
cin>>n;
m=new float(n);
for(i=0;i
p=new CScore(i+1);
(*p).INPUT();
(*p).Everage();
m[i]=(*p).PRINT();
delete p;
}
(*p).MXA(m,n);
return 0;
}
已经在Dev-C++编译通过
p.s.终于过百度的审查了。。。
审查速度不是一般的慢啊。。。
/*
学生有(num 、name、score[3])等信息,用类(CScore)来编写程序,要求:
成员函数1、进行学生信息的初始化;(构造函数,CScore)
成员函数1、输出文字“程序运行完毕!”; (析构函数,~CScore)
成员函数2、实现1个学生数据的输入;(INPUT)
成员函数3、计算学生的平均成绩;(Everage)
成员函数4、可打印学生的成绩上述信息;(PRINT)
成员函数5、找到成绩最好的学生并输出其信息;(MXA)
主函数6、设计类CScore ,定义对象调用构造函数。实现三个学生信息的录入,
计算学生的平均成绩,打印输出学生的信息,输出成绩最好的学生(平均成绩)。
*/
#include
#include
using namespace std;
class Cscore
{
public:
Cscore();
~Cscore(){cout<<"程序运行完毕!";}
void input(int n,string nam,float a,float b,float c);
float everage();
void print();
void maxp(Cscore &Cs1,Cscore &Cs2);
protected:
int num;
string name;
float score[3];
};
Cscore::Cscore()
{
num=0;
name="0";
for(int i=0;i<3;i++)
score[i]=0;
}
void Cscore::input(int n,string nam,float a,float b,float c)
{
num=n;
name=nam;
score[0]=a;
score[1]=b;
score[2]=c;
}
float Cscore::everage()
{
float aver,sum=0;
for(int i=0;i<3;i++)
sum+=score[i];
aver=sum/3.0;
return aver;
}
void Cscore::print()
{
cout<<"No.:"<
void Cscore::maxp(Cscore &Cs1,Cscore &Cs2)
{
int i;
if(everage()>Cs1.everage())
i=1;
else i=2;
if(i==1)
{
if(everage()
}
else if(i==2)
{
if(Cs1.everage()
}
cout<<"maxstud:"<
{
case 1:print();break;
case 2:Cs1.print();break;
case 3:Cs2.print();break;
default:cout<<"error!";
}
}
int main()
{
Cscore c1,c2,c3;
c1.input(1,"zhang",98,97,96);
c2.input(2,"li",88,87,86);
c3.input(3,"wang",78,96,77);
c1.print();
c2.print();
c3.print();
c1.maxp(c2,c3);
return 0;
}
学生有(num 、name、score[3])等信息,用类(CScore)来编写程序,要求:
成员函数1、进行学生信息的初始化;(构造函数,CScore)
成员函数1、输出文字“程序运行完毕!”; (析构函数,~CScore)
成员函数2、实现1个学生数据的输入;(INPUT)
成员函数3、计算学生的平均成绩;(Everage)
成员函数4、可打印学生的成绩上述信息;(PRINT)
成员函数5、找到成绩最好的学生并输出其信息;(MXA)
主函数6、设计类CScore ,定义对象调用构造函数。实现三个学生信息的录入,计算学生的平均成绩,打印输出学生的信息,输出成绩最好的学生(平均成绩)。
这是个考试题目.
提问者:richindcn - 助理 二级
// Cscore.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include "iostream"
#include "string"
using namespace std;
const int LESSONS=3;
class Cscore{
public:
Cscore(){}//默认构造函数
Cscore(int snum,string sname,int s[LESSONS]){//自定义构造函数
num=snum;
name=sname;
for (int i=0;i
}
}
~Cscore(){//析构函数
cout<<"程序运行完毕!"<
void input(){//学生数据输入
cout<<"请输入学号:";
cin>>num;
cout<<"请输入学生姓名:";
cin>>name;
cout<<"请输入学生成绩,以空格分开:";
for (int i=0;i
}
}
double everage(){//计算平均成绩
int total=0;
for (int i=0;i
}
return total/(double)LESSONS;
}
void print(){//打印学生信息
cout<<"学号: "<
for(int i=0;i
cout<
static void max(Cscore p[],int p_size){//查找并输出平均成绩最好的学生
Cscore temp=p[0];
for (int i=1;i
temp=p[i];
}
}
cout<
cout<<"----------------------------"<
private:
int num;
string name;
int score[LESSONS];
};
int _tmain(int argc, _TCHAR* argv[])
{
Cscore s[3];
//三个学生信息的输入
for (int i=0;i<3;i++){
s[i].input();
}
//打印学生信息
for (int i=0;i<3;i++){
s[i].print();
}
//查找并输出成绩最好的学生
Cscore::max(s,3);
return 0;
}