prog8.cpp

来自「C++语言程序设计题典」· C++ 代码 · 共 46 行

CPP
46
字号
#include <iostream.h>
#include <iomanip.h>
#include <string.h>
class student
{
	char name[10];
	int deg1,deg2,deg3;
public:
	student() { deg1=deg2=deg3=0; }
	student(char na[],int d1,int d2,int d3)
	{
		strcpy(name,na);
		deg1=d1;deg2=d2;deg3=d3;
	}
	friend student operator+(student s1,student s2)
	{
		static student st;
		st.deg1=s1.deg1+s2.deg1;
		st.deg2=s1.deg2+s2.deg2;
		st.deg3=s1.deg3+s2.deg3;
		return st;
	}
	void disp()
	{
		cout << setw(10) << name << setw(5) << deg1
			<< setw(5) << deg2 << setw(5) << deg3 << endl;
	}
	friend void avg(student &s,int n)
	{
		cout << setw(10) << "平均分" << setw(5) << s.deg1/n
			<< setw(5) << s.deg2/n << setw(5) << s.deg3/n << endl;
	}
};
void main()
{
	student s1("Li",78,82,86),s2("Zheng",75,62,89);
	student s3("Ma",89,87,95),s4("Xu",54,78,66),s;
	cout << "输出结果" << endl;
	s1.disp();
	s2.disp();
	s4.disp();
	s4.disp();
	s=s1+s2+s3+s4;      //调用重载运算符
	avg(s,4);           //友元函数求平均分
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?