主题:有关档案类定义的问题(各位帮忙改改错吧!!!)
[size=4]定义一个档案类,包含档案编号、档案名称数据成员,要求:
1、分别编写成员函数用于实现对档案信息的输入、输出与修改(PS:不能修改档案编号)。
2、以此档案类为基类公有派生出学生档案类,其中包含学生的学号、姓名、性别、年龄、3门课程成绩数据;定义成员函数用于实现数据的输入、输出与修改(PS:不能修改学号)。
3、 以此档案类为基类公有派生出教师档案类,其中包含教师的教工号、姓名、性别、年龄、工资数据;定义成员函数用于实现数据的输入、输出与修改(PS:不能修改教工号)。
4、可以实现对10个学生与10个教师的档案操作(输入、输出、修改)。
[color=800000]#include<iostream>
using namespace std;
class document
{public:
char name[20];
int number;
int i;
int NO();
void setname(char *);
char getname();
};
void document::setname(char *namestr)
{strcpy(name,namestr);}
int document::NO()
{
cin>>number;return number;
}
class students:protected document
{public:
int snumber();
char sex();
int age();
int grade();
};
int students::snumber()
{int j;j=number;return j;}
char students::sex()
{char s;cin>>s;return s;}
int students::age()
{int a;cin>>a;return a;}
int students::grade()
{int g;cin>>g;return g;}
class teachers:protected document
{public:
int snumber();
char sex();
int age();
int pay();
};
int teachers::snumber()
{int j;j=number;return j;}
char teachers::sex()
{char s;cin>>s;return s;}
int teachers::age()
{int a;cin>>a;return a;}
int teachers::pay()
{int p;cin>>p;return p;}
main()
{ int i;int j;
teachers g;students w;
char student[5],namestr;
char teacher[5];
for(i=0;i<20;i++)
{cout<<"please scanf a student's name"<<endl;
cin>>namestr;
}
students();
student[j]=w.snumber();
student[j]=w.sex();
student[j]=w.age();
student[j]=w.grade();
for(j=0;j<4;j++)
cout<<w.snumber<<w.sex<<w.age<<w.grade<<endl;
for(i=0;i<20;i++)
{cout<<"please scanf a teacher's name"<<endl;
cin>>namestr;
}
teachers();
teacher[j]=g.snumber();
teacher[j]=g.sex();
teacher[j]=g.age();
teacher[j]=g.pay();
for(j=0;j<4;j++)
cout<<g.snumber<<g.sex<<g.age<<g.pay<<endl;
}[/color][/size]
1、分别编写成员函数用于实现对档案信息的输入、输出与修改(PS:不能修改档案编号)。
2、以此档案类为基类公有派生出学生档案类,其中包含学生的学号、姓名、性别、年龄、3门课程成绩数据;定义成员函数用于实现数据的输入、输出与修改(PS:不能修改学号)。
3、 以此档案类为基类公有派生出教师档案类,其中包含教师的教工号、姓名、性别、年龄、工资数据;定义成员函数用于实现数据的输入、输出与修改(PS:不能修改教工号)。
4、可以实现对10个学生与10个教师的档案操作(输入、输出、修改)。
[color=800000]#include<iostream>
using namespace std;
class document
{public:
char name[20];
int number;
int i;
int NO();
void setname(char *);
char getname();
};
void document::setname(char *namestr)
{strcpy(name,namestr);}
int document::NO()
{
cin>>number;return number;
}
class students:protected document
{public:
int snumber();
char sex();
int age();
int grade();
};
int students::snumber()
{int j;j=number;return j;}
char students::sex()
{char s;cin>>s;return s;}
int students::age()
{int a;cin>>a;return a;}
int students::grade()
{int g;cin>>g;return g;}
class teachers:protected document
{public:
int snumber();
char sex();
int age();
int pay();
};
int teachers::snumber()
{int j;j=number;return j;}
char teachers::sex()
{char s;cin>>s;return s;}
int teachers::age()
{int a;cin>>a;return a;}
int teachers::pay()
{int p;cin>>p;return p;}
main()
{ int i;int j;
teachers g;students w;
char student[5],namestr;
char teacher[5];
for(i=0;i<20;i++)
{cout<<"please scanf a student's name"<<endl;
cin>>namestr;
}
students();
student[j]=w.snumber();
student[j]=w.sex();
student[j]=w.age();
student[j]=w.grade();
for(j=0;j<4;j++)
cout<<w.snumber<<w.sex<<w.age<<w.grade<<endl;
for(i=0;i<20;i++)
{cout<<"please scanf a teacher's name"<<endl;
cin>>namestr;
}
teachers();
teacher[j]=g.snumber();
teacher[j]=g.sex();
teacher[j]=g.age();
teacher[j]=g.pay();
for(j=0;j<4;j++)
cout<<g.snumber<<g.sex<<g.age<<g.pay<<endl;
}[/color][/size]