📄 vc0906.cpp
字号:
//Example 9.6: 编写雇员信息管理程序
#include <iostream.h>
#include <afx.h>
#include <string.h>
class Employee
{
public:
char m_strName[10];
char m_Sex[6];
int m_nAge;
char m_strDept[20];
float m_fSalary;
Employee() { }
Employee(char *name,char *sex,int age,char *dept,float salary);
void SaveEmp(CFile* fp) { fp->Write(this,sizeof(Employee));}
void ReadEmp(CFile* fp) { fp->Read(this,sizeof(Employee)); }
void ShowMe() {
cout<<m_strName<<"\t"<<m_Sex<<"\t"<<m_nAge<<"\t";
cout<<m_strDept<<"\t"<<m_fSalary<<endl;
}
};
Employee::Employee(char *name,char *sex,int age,char *dept,float salary)
{
strcpy(m_strName, name);
strcpy(m_Sex , sex );
m_nAge = age;
strcpy(m_strDept, dept);
m_fSalary = salary;
}
void main()
{
int count=0;
Employee emp[50];
int i,j,age;
float salary;
CFile myfile;
CFileException e;
char name[10],sex[6],dept[20];
for(;;)
{
cout<<" 1.显示所有 2.增加雇员 3.删除雇员";
cout<<" 4.存储信息 5.读取信息 6.退出\n";
cout<<"请输入选项编号:";
cin>>i;
switch(i) {
case 1:
cout<<endl<<"----------------------------------------------"<<endl;
for(i=0;i<count;i++) {
cout<<" "<<i+1<<"\t";
emp[i].ShowMe();
}
cout<<"----------------------------------------------"<<endl<<endl;
break;
case 2:
if(count<50) {
i=count++;
cout<<"请依次输入姓名、性别、年龄、工作部门、月薪:\n";
cin>>name>>sex>>age>>dept>>salary;
emp[i]=Employee(name,sex,age,dept,salary);
strcpy(emp[i].m_strDept, dept);
emp[i].m_fSalary = salary;
}
else { cout<<"存储空间已满"; }
break;
case 3:
cout<<"输入要删除的雇员号:\t";
cin>>i;
if(i<=count && i>0) {
for(j= i; j< count; j++) { emp[j-1]=emp[j]; }
count--;
cout<<"\n --- 记录已删除 ---\n\n";
}
else { cout<<"输入错误"; }
break;
case 4:
myfile.Open("emp_Rec",CFile::modeWrite|CFile::modeCreate,&e);
myfile.Write(&count,sizeof(count));
for(j=0;j<count;j++) emp[j].SaveEmp(&myfile);
myfile.Close();
cout<<"\n --- 雇员信息已保存 --- \n\n";
break;
case 5:
if(myfile.Open("emp_Rec",CFile::modeRead,&e))
{
myfile.Read(&count,sizeof(count));
for(j=0;j<count;j++) emp[j].ReadEmp(&myfile);
myfile.Close();
cout<<"\n --- 雇员信息已读入 --- \n\n";
}
else { cout<<"\n -- 文件打开失败 -- \n\n"; }
break;
default:
return ;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -