文档详情

实验7输入输出流库.doc

发布:2017-08-18约6.32千字共9页下载文档
文本预览下载声明
实验内容 程序Ex_File:用文件来实现一个学生记录的添加、查找等操作。 提示:学生记录用类CstudenRec表示,它的数据成员有:姓名、学号、3门课的成绩以及总平均分,成员函数记录显示Print、记录键盘输入Input和数据校验Validate 以及“”””运算符重载等。文件操作用CStuFile类定义,成员函数有数据的添加Add、查找Seek、显示List等。 实验准备和说明 (1)在学习完第2章内容之后进行本次实验。 (2)编写本次上机所需要的程序。 实验步骤 1.创建工作文件夹 打开计算机,在“D:\Visual C++程序、LiMing”文件夹中创建一个新的子文件夹“实验7”。 2.创建控制台应用程序项目Ex_File 创建控制台应用程序项目Ex_File的具体步骤如下。 (1)启动Visual C++6.0。 (2) 选择“文件”→“新建”菜单命令,显示出“新建”对话框。从列表框中选中Win32Console Application项。 (3)在“工程”编辑框中输入控制台应用程序项目名称Ex_File,并将项目文件夹定位到“D:\Visual C++程序\LiMing\实验7”。 (4)单击“确定”按钮,显示Win32应用程序向导对话框。选中An empty project项。单击“完成”按钮,系统将显示向导创建的信息,单击“确定”按钮将自动创建此应用程序。 3.添加Ex_File.h文件 添加Ex_File.h文件的具体步骤如下。 (1)选择“文件”→“新建”菜单命令,将“新建”对话框切换到“文件”标签页面,选中“C/C++Header File”文件类型,在文件编辑框中输入Ex_File.h,单击“确定” 按钮。 (2)在Ex_File.h中添加CstudentRec类代码: #includeiostream.h # includeiomanip.h # includefstream.h # includestring.h class CstudentRec { public: CstudentRec(char*name,char*id,float score[]); CstudentRec(){chFlag=`N`;}; ∥默认构造函数 ~CStudentRec(){}; //默认析构函数 void Input(void); //键盘输入,返回记录 float Validate(void); //成绩数据的输入验证,返回正确值 void Print(bool isTitle=false); //记录显示 friend ostreamoperator(ostreamos,CStudentRecstu); friend istreamoperator(istreamis,CStudentRecstu); char chFlag; //标志,‘A’表示正常,‘N’表示空 char strName[20]; //姓名 char strID[10]; //学号 float fScore[3]; //3门成绩 float fAve; //总平均分 }; //CStudent类的实现 CStudentRec::CStudentRec(char*name,char*id,float score[]) { strncpy(strName,name,20); strncpy(strID,id,10); fAve=0; for(ont i=0;i3;i++) { fScore[i]=score[i]; fAve+=fScore[i]; } fAve=float(fAve/3.0); chFlag=A; } void CStudentRec::Input(void) { cout姓名;cinstrName; cout学号;cinstrID; float fSum=0; for9int i=0;i3;i++) { cout成绩i+1: ; fScore[i]+Validate(); fSum+=fScore[i]; } fAve=(float)(fSum/3.0); chFlag=A; } float CStudentRec::Validate(void) { int s;l char buf[80]; float res; for(;;) { cinres; s=cin.rdstate(
显示全部
相似文档