第五章10

#include <iostream> 
#include <cstring> 
using namespace std; 
class Teacher                               
 {public: 
    Teacher(int,char [],char);              
    void display();                         
  private: 
   int num; 
   char name[20]; 
   char sex; 
  };  
Teacher::Teacher(int n,char nam[],char s)    
 {num=n; 
  strcpy(name,nam); 
  sex=s; 
}  
void Teacher::display()                      
 {cout<<"num:"<<num<<endl; 
  cout<<"name:"<<name<<endl; 
  cout<<"sex:"<<sex<<endl; 
}  
class BirthDate                               
 {public: 
    BirthDate(int,int,int);                  
    void display();                          
    void change(int,int,int);                 
  private: 
    int year; 
    int month; 
    int day; 
};  
BirthDate::BirthDate(int y,int m,int d)       
 {year=y; 
  month=m; 
  day=d; 
 } 
  
void BirthDate::display()                     
{cout<<"birthday:"<<month<<"/"<<day<<"/"<<year<<endl
;}  
void BirthDate::change(int y,int m,int d)    
 {year=y; 
  month=m; 
  day=d; 
 } 
  
class Professor:public Teacher                         
//教授类 
 {public: 
    Professor(int,char [],char,int,int,int,float);    
    void display();                                   
    void change(int,int,int);                        
   private: 
    float area; 
    BirthDate birthday;                               
 };  
Professor::Professor(int n,char nam[20],char s,int y,int m,int d,float a): 
 Teacher(n,nam,s),birthday(y,m,d),area(a){ }          
void Professor::display()                            
{Teacher::display(); 
 birthday.display(); 
 cout<<"area:"<<area<<endl; 
}  
void Professor::change(int y,int m,int d)           
 {birthday.change(y,m,d); 
 }  
int main() 
{Professor prof1(3012,"Zhang",'f',1949,10,1,125.4);  
 cout<<endl<<"original data:"<<endl; 
 prof1.display();                                     
 cout<<endl<<"new data:"<<endl; 
 prof1.change(1950,6,1);                              
 prof1.display();                                 
 return 0; 
} 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值