十月曹操吧 关注:658贴子:1,130
  • 3回复贴,共1
编程:1,设计Person基类有编号,姓名,地址,成员函数输入输出。派生类Employee有单位,职位,月薪,成员函数输入输出
#include"stdafx.h"
#include<iostream>
#include"string.h"
using namespace std;
class Person{
char ID[20];
char *name;
      char *sex;
      char *Addr;
public:
void SetData(){
cout<<"ID is";
cin>>ID;
      cout<<"name is";
name=new char;
cin>>name;
cout<<"sex is";
sex=new char;
cin>>sex;
cout<<"Addr is";
Addr=new char;
cin>>Addr;}
void Display()
{cout<<"ID:"<<ID<<endl;
cout<<"姓名"<<name<<endl;
cout<<"性别"<<sex<<endl;
cout<<"地址"<<Addr<<endl;
}
~Person(){cout<<"Person is destructing"<<endl;}
};
class Employee:public Person{
char *Unit;
char *Post;
float salary;
public:
void SetData(){
Person::SetData();
cout<<"Unit is";
Unit=new char;
cin>>Unit;
cout<<"Post is";
Post=new char;
cin>>Post;
cout<<"salary is";
cin>>salary;}
void Display(){
Person::Display();
cout<<"工作单位:"<<Unit<<endl;
cout<<"职务:"<<Post<<endl;
cout<<"薪水"<<salary<<endl;
}
~Employee(){cout<<"Employee is destructing"<<endl;}
};
void t3(){
      Employee emp1;
emp1.SetData();
emp1.Display();}



IP属地:江苏1楼2011-06-12 23:48回复
    2,计算两点间距离,友元
    #include"stdafx.h"
    #include<iostream>
    #include"math.h"
    using namespace std;
    class Point
    {     int x,y;
    public:
    Point(int ix,int iy)
    {         x=ix;
    y=iy;
    }
    ~Point(){cout<<"Point is destructing"<<endl;}
    void display(){
    cout<<"("<<x<<","<<y<<")"<<endl;}
    friend void Dist(Point p1,Point p2);
    int getx(){return x;}
    int gety(){return y;}
    };
    void Dist(Point p1,Point p2){
        double dist;
    dist=sqrt(pow((p1.getx()-p2.getx()),2.0)+pow((p1.gety()-p2.gety()),2.0));
    cout<<"Dist="<<dist<<endl;
    }
    void t2(){
    Point po1(2,4),po2(1,3);
    po1.display();
    po2.display();
    Dist(po1,po2);
    }
    


    IP属地:江苏2楼2011-06-12 23:48
    回复
      靠 吞楼吞的厉害啊


      6楼2011-06-12 23:52
      回复
        @蓝色的小蛋糕


        8楼2011-06-14 21:58
        回复