1、编写一个程序。有一个汽车类vehicle,它具有一个需传递参数的构造函数...

1、编写一个程序。有一个汽车类vehicle,它具有一个需传递参数的构造函数,汽车类vehicle中的数据成员为:车轮个数wheels和车重weight放在保护段中,汽车类vehicle中的公有成员函数为:get_wheels()(返回车轮个数的值)、get_weight()(返回车重的值)、wheel_load()(返回每个轮胎的载重量的值:weight/wheels)、print()(输出车轮的个数和车重的公斤数);小车类car是vehicle类的私有派生类,它具有一个需传递参数的构造函数,小车类car中的私有数据成员为:车载人数passenger_load,小车类car中的公有成员函数为:get_passengers()(返回车载人数的值)、print()(输出小车车轮的个数和车重的公斤数以及车载人数的个数);卡车类truck是vehicle类的私有派生类,它具有一个需传递参数的构造函数,卡车类truck中的私有数据成员为:载人数passenger_load和载重量payload,卡车类truck中的公有成员函数为:get_passengers()(返回车载人数的值)、efficiency()(返回卡车的载重效率的值:payload/(payload+weight)、print()(输出卡车车轮的个数和车重的公斤数以及车载人数的个数和卡车的载重效率的值))。
程序的主函数如下:
int main() {
car car1(4, 1000,5);
truck tru1(10, 5000, 3, 340000);
car1.print();
tru1.print();
return 0;
}
本程序的执行结果如下:
小车:
车轮:4个
重量:1000公斤
载人:5人

卡车:
车轮:10个
重量:5000公斤
载人:3人
效率:0.985507

第1个回答  2016-06-13
一、实验目的1.掌握静态数据成员与静态成员函数的定义、特点与使用方式。2.掌握对象指针、对象引用及其作为函数参数的应用。3.理解并掌握常类型的特点、定义、使用要求及应用场合。4.掌握子对象的定义与初始化方式。5.掌握动态对象的含义、创建与删除方式。二、实验内容1.编写一个程序,设计一个产品类Product,其定义如下·:ClassProduct{charname;Intprice;Intquantity;Public:Product(char*n,intp,intq);~product();Voidbuy(intmoney);Voidget()const;};并用数据进行测试。程序如下:#includeclassproduct{char*name;intprice;intquantity;public:product(char*n,intp,intq){name=n;price=p;quantity=q;}~product(){coutclassR{public:R(intr1,intr2){R1=r1;R2=r2;}voidprint();voidprint()const;private:intR1,R2;};voidR::print(){coutclassA{public:A(inti=0){m=i;coutclassSample{intx;public:voidsetx(inti){x=i;}intgetx(){returnx;}};voidmain(){Sample*p;SampleA[3];A[0].setx(5);A[1].setx(6);A[2].setx(7);for(inti=0;iclassA{public:A(){coutclassA{inti;staticintj;public:A(intx){i=x;j+=x;}staticvoidfunc(Aa);};intA::j=0;voidA::func(Aa){cout>array[i];print(array,N);}{coutclassTime{public:Time(){hour=minute=0;}Time(floath,floatm);voidset(floath,floatm);voiddisplay24();friendvoiddispay12(Time&p);private:floathour;floatminute;};Time::Time(floath,floatm){hour=h;minute=m;}voidTime::set(floath,floatm){hour=h;minute=m;}voidTime::display24(){minute++;if(minute==60){minute=0;hour++;}if(hour==24){hour=0;}cout<本回答被网友采纳
相似回答