第一篇:長安大學(xué)研究生C++考試編程題答案
2008年第一題
#include“iostream.h” class point
//圓心坐標(biāo)類 {public: void set(int a,int b);//初始化函數(shù)給坐標(biāo)賦初值
void get(int &a,int &b);
//將坐標(biāo)值帶到類外 private: int x;int y;
//圓心坐標(biāo) };void point::set(int a,int b){x=a;y=b;} void point::get(int &a,int &b){a=x;b=y;} //****************************************************************** class circle:public point
//計算圓面積類 { public: circle(double c,int a,int b);
//c為圓半徑,a b為圓心坐標(biāo)
double value();
//計算圓面積,輸出圓心坐標(biāo)和圓面積,返回圓面積 private: double r;
//圓半徑 };circle::circle(double c,int a,int b){r=c;set(a,b);} double circle::value(){double m;
m=3.14*r*r;int a,b;
get(a,b);cout< //計算圓柱體體積類 { public: cylinder(double d,double c,int a,int b);//d為圓柱體高,c為圓半徑,a b為圓心坐標(biāo) double value();//計算圓柱體體積,輸出圓心坐標(biāo)和底圓面積以及圓柱體體積,返回圓柱體體積 private: double h;//圓柱體高 };cylinder::cylinder(double d,double c,int a,int b):h(d),circle(c,a,b){} double cylinder::value(){double v,m;m=circle::value();v=m*h;cout< cin>>r;cout<<“圓柱體高:”; cin>>h;cout<<“圓心坐標(biāo):”; cin>>x>>y;circle AA(r,x,y);AA.value();cylinder BB(h,r,x,y);BB.value();} 2008年第二題 #include“iostream.h” #include“string.h” class emp //已有的員工工資類 { public: void set(char *s,double i);//初始化函數(shù)s為員工名字,i為基本工資 virtual double earning();//計算員工實(shí)發(fā)工資(基本工資+基本工資*0.2) void disp(); //輸出員工名字及實(shí)發(fā)工資 virtual ~emp(); //釋放對象 protected: char *name; //員工名字 double bs; //基本工資 };void emp::set(char *s,double i){ name=new char[strlen(s)+1];strcpy(name,s);bs=i;} double emp::earning(){return bs+bs*0.2;} void emp::disp(){cout<<“姓名:”< #include“iostream.h” class time { private: int hour;int minute;int second; //三個私有成員 public: time(){hour=0;minute=0;second=0;}//默認(rèn)構(gòu)造函數(shù) time(int i,int j,int k){settime(i,j,k);} void settime(int i,int j,int k){ int temp1,temp2; second=k%60; temp1=k/60; minute=(j+temp1)%60; temp2=(j+temp1)/60; hour=(i+temp2)%24;} //對數(shù)據(jù)成員設(shè)定初值 void gettime(int *pi,int *pj,int *pk){*pi=hour;*pj=minute;*pk=second;} //將數(shù)據(jù)成員傳遞到類外 };void main(){ int h,m,s;cout<<“input:”<<“hour,minute,second”< cin>>h>>m>>s; cout< time T(h,m,s);T.gettime(&h,&m,&s); cout<<“hour:”< #include“iostream.h” class S //一般中等學(xué)校的學(xué)生類S,是基類 { protected: float m; //數(shù)學(xué)成績 float e; //英語成績 char *name; //學(xué)生姓名 public: S(){m=0;e=0;name='