太长了 分2篇。。。错误很简单 解答了的给100分。。。。。之1
#include <iostream>
#include <string>
#include <list>
using namespace std;
class Person
{
protected:
char name[10];
int age;
float salary;
public:
Person(char _name[],int _age,float _salary){
strcpy(name,_name);
age=_age;
salary=_salary;
}
~Person(){}
};
///////////////////////////////////
class Seller:public Person
{
int sell_amount;
char special[100];
public:
Seller(char [],int ,float ,int ,char []);
~Seller(){}
char *Get_name();
void Show_all_data();
};
Seller::Seller(char _name[],int _age,float _salary,int _sell_amount,char _special[])
:Person(_name,_age,_salary)
{
sell_amount=_sell_amount;
strcpy(special,_special);
}
char *Seller::Get_name()
{
return name;
}
void Seller::Show_all_data()
{
cout<<"姓名:"<<name<<" 年龄:"<<age<<" 工资:"<<salary<<" 销售业绩:"<<sell_amount<<" 特长;"<<special<<endl;
}
//////////////////////////////////
class Worker:public Person
{
int work_amount;
char special[100];
public:
Worker(char [],int ,float ,int ,char []);
~Worker(){}
char *Get_name();
void Show_all_data();
};
Worker::Worker(char _name[],int _age,float _salary,int _work_amount,char _special[])
:Person(_name,_age,_salary)
{
work_amount=_work_amount;
strcpy(special,_special);
}
char *Worker::Get_name()
{
return name;
}
void Worker::Show_all_data()
{
cout<<"姓名:"<<name<<" 年龄:"<<age<<" 工资:"<<salary<<" 生产业绩:"<<work_amount<<" 特长;"<<special<<endl;
}
///////////////////////////////////
class Sell_manager:public Person
{
char *managed_seller[200];
public:
Sell_manager(char [],int ,float ,char *[]);
~Sell_manager();
char *Get_name();
void Show_all_data();
};
Sell_manager::Sell_manager(char _name[],int _age,float _salary,char * _managed_seller[])
:Person(_name,_age,_salary)
{
int i=0;
for(;managed_seller[i]!=NULL;i++)
{
managed_seller[i]=new char [strlen(_managed_seller[i])+1];
strcpy(managed_seller[i],_managed_seller[i]);
}
managed_seller[i]=NULL;
}
Sell_manager::~Sell_manager()
{
int i=0;
for(;managed_seller[i]!=NULL;i++)
delete managed_seller[i];
}
char *Sell_manager::Get_name()
{
return name;
}
void Sell_manager::Show_all_data()
{
int i=0;
cout<<"姓名:"<<name<<" 年龄:"<<age<<" 工资:"<<salary;
cout<<"所管辖的销售人员:";
for(;managed_seller[i]!=NULL;)
cout<<managed_seller[i]<<" ";
cout<<endl;
}
///////////////////////////////////
class Work_manager:public Person
{
char *managed_worker[200];
public:
Work_manager(char [],int ,float ,char *[]);
Work_manager::~Work_manager();
char *Get_name();
void Show_all_data();
};
Work_manager::Work_manager(char _name[],int _age,float _salary,char *_managed_worker[])
:Person(_name,_age,_salary)
{
int i=0;
for(;managed_worker[i]!=NULL;i++)
{
managed_worker[i]=new char [strlen(_managed_worker[i])+1];
strcpy(managed_worker[i],_managed_worker[i]);
}
managed_worker[i]=NULL;
}
Work_manager::~Work_manager()
{
int i=0;
for(;managed_worker[i]!=NULL;i++)
delete managed_worker[i];
}
char *Work_manager::Get_name()
{
return name;
}
void Work_manager::Show_all_data()
{
int i=0;
cout<<"姓名:"<<name<<" 年龄:"<<age<<" 工资:"<<salary;
cout<<"所管辖的生产人员:";
for(;managed_worker[i]!=NULL;)
cout<<managed_worker[i]<<" ";
cout<<endl;
}
//////////////////////////////////
//////////////////////////////////
list<Seller> Seller_list;
list<Worker> Worker_list;
list<Sell_manager> Sell_manager_list;
list<Work_manager> Work_manager_list;
void Get_seller()
{
char na[10];
char spec[100];
int ag;
int am;
float sala;
cout<<"姓名:";
cin>>na;
cout<<"年龄:";
cin>>ag;
cout<<"工资:";
cin>>sala;
cout<<"销售业绩:";
cin>>am;
cout<<"特长:";
cin>>spec;
cout<<endl;
Seller_list.push_back(Seller(na,ag,sala,am,spec));
}
void Get_worker()
{
char na[10];
char spec[100];
int ag;
int am;
float sala;
cout<<"姓名:";
cin>>na;
cout<<"年龄:";
cin>>ag;
cout<<"工资:";
cin>>sala;
cout<<"生产业绩:";
cin>>am;
cout<<"特长:";
cin>>spec;
cout<<endl;
Worker_list.push_back(Worker(na,ag,sala,am,spec));
}
void Get_sell_manager()
{
char na[10];
int ag;
float sala;
char *_managed_seller[100];
cout<<"姓名:";
cin>>na;
cout<<"年龄:";
cin>>ag;
cout<<"工资:";
cin>>sala;
cout<<"管辖的销售人员:\n";
cout<<"请输入被该经理管辖的销售人员的姓名:";
int i=0;
for(;;i++)
{
char d;
cin>>_managed_seller[i];
cout<<"还要继续输入被管辖的销售人员的姓名吗?(Y/N)";
cin>>d;
if(d=='N'||d=='n')
{
_managed_seller[i+1]=NULL;
cout<<endl;
break;
}
}
Sell_manager_list.push_back(Sell_manager(na,ag,sala,_managed_seller));
}
问题点数:50、回复次数:3Top
1 楼v41dugu(一步一生)回复于 2005-07-21 15:38:30 得分 0
.........Top
2 楼szws(克米帅)回复于 2005-07-21 15:47:09 得分 50
没错误啊
添加mian函数
void main()
{}
ompiling...
test.cpp
Linking...
PTest.exe - 0 error(s), 0 warning(s)
Top
3 楼v41dugu(一步一生)回复于 2005-07-21 16:00:12 得分 0
还有个之2Top




