prog15.cpp

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

CPP
50
字号
#include <iostream.h>
#include <iomanip.h>
#include <string.h>
#include <fstream.h>
class Stud
{
	int no;
	char name[10];
	int score;
public:
	Stud(int n,char na[],int s)
    {
		no=n;
		strcpy(name,na);
		score=s;
	}
	virtual void disp(ostream &out);
    friend ostream & operator<<(ostream & out,Stud &s);
};
void Stud::disp(ostream &out)
{
	out << setiosflags(ios::left) << setw(4) << no << setw(10)
		<< name << setiosflags(ios::right) << setw(6) 
		<< score;// << endl;
}
ostream & operator<<(ostream & out,Stud &s)
{
	s.disp(out);
	out << endl;
	return out;
}
void main()
{
	char buf[80];
	ofstream out("stud.dat",ios::out);
	Stud st[]={Stud(1,"王丽",89),Stud(2,"李明",78),Stud(3,"孙斌",87),
		Stud(4,"陈华",67),Stud(5,"张伟",68),Stud(6,"章华",95)};
    for (int i=0;i<6;i++)
		out << st[i];          //通过执行重载运算符函数将st[i]插入out流中
	out.close();
	cout << "输出结果" << endl;
	ifstream in("stud.dat");   //屏幕上显示stud.dat文件内容
    while (!in.eof())
	{
		in.getline(buf,80);
		cout << "  " << buf << endl;
	}
	in.close();
}

⌨️ 快捷键说明

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