大二(上)C++ 类的预习作业

大二(上)C++ 类的预习作业

#include <iostream>  
#include <string>  
using namespace std;

class Student
{
private:
	int Score[20];
	int Age[20];
	string Name[20];

public:
	void setName(string n, int a, int s,int i)
	{
			Name[i] = n;
			Age[i] = a;
			Score[i] = s;
	}
	int getScore(int i)
	{
		return Score[i];
	}
	int getAge(int i)
	{
		return Age[i];
	}
	string getName(int i)
	{
		return Name[i];
	}
	void show(int i)
	{
		cout << "姓名:" << Name[i] << "  年龄: " 
			<< Age[i] << "  分数: " << Score[i]  << endl;
	}

	void max(int w)
	{
		int max = 0;
		for (int n = 0; n < w; n++)
		{
			if (Score[max] < Score[n])
			{
				max = n;
			}
		}
		cout << "\n最高分者的信息:\n姓名:" << Name[max] << "  年龄: "
			<< Age[max] << "  分数: " << Score[max] << "\n" << endl;
	}
};


int main()
{
	string name;
	Student S1;
	int age, score, w;
	cout << "学生的个数为:" ;
	cin >> w;
	cout << endl;

	for (int i = 0; i < w; i++)
	{
		cout << "学生姓名:";
		cin >> name;
		cout << "学生年龄:";
		cin >> age;
		cout << "学生成绩:";
		cin >> score;
		cout << endl;
		S1.setName(name, age, score, i); 
	}
	for (int i = 0; i < w; i++) 
	{
		cout << i+1 << ".";
		S1.show(i);
	}
	S1.max(w);

	cout << endl;
	system("pause");
	return 0;
}