请阅读以下技术说明、类图及C++代码,根据要求将(1)~(5)空缺处的内容填写完整。
[说明]
已知对某载客车辆(Car)进行类建模,如图4-19所示。其中,类Engine表示发动机引擎,类Wheel表示车轮,类Body表示车身,类Driver表示司机,类Passenger表示乘客。
[C++代码]
car.run();
}
第1题:
阅读下列说明、图和C++代码,填补空缺。
[说明]
已知对某载客车辆(Car)进行类建模,如图12-2所示,其中类Engine表示发动机引擎,类Wheel表示车轮,类Body表示车身,类Driver表示司机,类Passenger表示乘客。
const int __________ =7; //定义最多载客数
const int MAX_WHEELS=5; //定义最多轮胎数
class Body{ //此处代码省略 ); //车身类
class Passenger{ //此处代码省略}; //乘客类
Class Wheel{ //此处代码省略}; //车轮类
Class Driver{ //司机类
public:
string name; //表示第几路公交车司机
Driver(string driverName):marne( __________ ){}; //构造函数
};
class Engine{ //引擎类
public:
string engineNo; //引擎编号
Engine(string engineNo){ __________ ->engineNo=engineNo; }
//构造函数
};
Class Car{ //汽车类
protected:
Engine *engine; Driver *driver; Body body;
Wheel *wheels[MAX_WHEELS]; Passenger *passengers[MAX_PASSENGERS];
public:
Car(Driver *driver)( //构造函数
this->driver=driver;
engine=new Engine("TX653 6型号引擎");
for(int index=0; index<MAX_WHEELS; index++){
wheels[index]=new Wheel( );
}
for(int index=0; index passengers[index]=NULL;
}
}
virtual -Car( ){ //析构函数
for (int index=0; index<MAX_WHEELS; index++)
delete wheels[index];
delete __________ ;
}
int getPassengerNumber( ){ //获取车上乘客数量
//此处代码省略
}
void getonpassenger(Passenger *apassenger ){
//乘客上车
//此处代码省略
}
void run( ){ //开车
if(driver==NULL){cout<< "司机尚未上车!"; return; }
//此处代码省略
}
};
void main( ){
Driver driver("第五路公交车司机");
Car car( __________ );
Passenger passengers[MAX_PASSENGERS];
for(int index=0; index<MAX_PASSENGERS; index++)
//乘客上车处理
car. getOnPasSenger(&passengers[index]);
car. run( );
}
第2题:
试题五(共 15 分)
阅读下列说明、图和C++代码,将应填入 (n) 处的字句写在答题纸的对应栏内。
[说明]
已知对某载客车辆(Car)进行类建模,如图 5-1所示,其中类 Engine 表示发动机引擎,类 Wheel 表示车轮,类 Body 表示车身,类 Driver 表示司机,类 Passenger 表示乘客。
[C++代码]
const int (1) = 7; //定义最多载客数
const int MAX_WHEELS = 5; //定义最多轮胎数
class Body{ //此处代码省略 }; //车身类
class Passenger{ //此处代码省略 }; //乘客类
class Wheel{ //此处代码省略 }; //车轮类
class Driver{ //司机类
public:
string name; //表示第几路公交车司机
Driver(string driverName):name( (2) ){}; //构造函数
};
class Engine{ //引擎类
public:
string engineNo; //引擎编号
Engine(string engineNo){ (3) ->engineNo = engineNo; } //构造函数
};
class Car{ //汽车类
protected:
Engine * engine; Driver * driver; Body body;
Wheel * wheels[MAX_WHEELS]; Passenger * passengers[MAX_PASSENGERS];
public:
Car(Driver *driver){ //构造函数
this->driver = driver;
engine = new Engine("TX6536 型号引擎");
for (int index = 0; index < MAX_WHEELS; index++){
wheels[index] = new Wheel();
}
for (int index = 0; index < MAX_PASSENGERS; index++){
passengers[index] = NULL;
}
}
virtual ~Car(){ //析构函数
for (int index=0; index < MAX_WHEELS; index++)
delete wheels[index];
delete (4) ;
}
int getPassengerNumber(){ //获取车上乘客数量
//此处代码省略
}
void getOnPassenger(Passenger * aPassenger ){ //乘客上车
//此处代码省略
}
void run(){ //开车
if(driver == NULL){ cout << "司机尚未上车!"; return; }
//此处代码省略
}
};
void main(){
Driver driver("第五路公交车司机");
Car car( (5) );
Passenger passengers[MAX_PASSENGERS];
for (int index = 0 ; index < MAX_PASSENGERS; index ++) //乘客上车处理
car.getOnPassenger(&passengers[index]);
car.run();
}
第3题:
阅读下列说明、图和C抖代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
已知对某载客车辆(Car)进行类建模,如图5-1所示,其中类Engine表示发动机引擎,类Wheel表示车轮,类Body表示车身,类Driver表示司机,类Passenger表示乘客。
【C++代码】
const int(1)=7; //定义最多载客数
const int MAX WHEELS=5; //定义最多轮胎数
class Body{ //此处代码省略 }; //车身类
class Passenger{ //此处代码省略 }; //乘客类
class Wheel{ //此处代码省略 }; //车轮类
class Driver{ //司机类
public:
string name;//表示第几路公交车司机
Driver(string driverName):name((2)){}///构造函数
};
class Engine{//引擎类
public:
string engineNo;//引擎编号
Engine(string engineNo){(3)->engineNo=engineNo;}//构造函数
};
class Car{//汽车类
protected:
Engine * engine; Driver * driver; Body body;
Wheel * wheels [MAX_WHEELS];Passenger * passengers [MAX_PASSENGERS];
public:
Car(Driver *driver){ //构造函数
this->driver=driver;
engine=new Engine("TX6536型号引擎");
for (int index=0; index<MAX WHEELS;index++){
wheels[index]=new Wheel();
}
for(int index=0;index<MAX_PASSENGERS;index++){
passengers[index]=NULL;
}
}
virtual ~Car(){//析构函数
for( int index=0;index<MAX_WHEELS;index++)
delete wheels[index];
delete(4);
}
int getPassengerNumber(){//获取车上乘客数量
//此处代码省略
}
void getOnPassenger(Passenger * aPassenger){//乘客上车
//此处代码省略
}
void run(){ //开车
if(driver==NULL){cout<<"司机尚未上车!"; return; }
//此处代码省略
}
};
void main(){
Driver driver("第五路公交车司机");
Car car((5));
Passenger passengers[MAX_PASSENGERS];
for(int index=0;index<MAX PASSENGERS;index ++) //乘客上车处理
car.getOnPassenger(&passengers [index]);
car.run();
}
第4题:
试题七(共 15 分)
阅读下列说明、图和Java代码,将应填入 (n) 处的字句写在答题纸的对应栏内。
[说明]
已知对某载客车辆(Car)进行类建模,如图 7-1所示,其中类 Engine 表示发动机引擎,类 Wheel 表示车轮,类 Body 表示车身,类 Driver 表示司机,类 Passenger 表示乘客。
[Java 代码]
class Body{ //此处代码省略 }; //车身类
class Passenger{ //此处代码省略 }; //乘客类
class Wheel{ //此处代码省略 }; //车轮类
class Driver{ //司机类
public String name; //表示第几路公交车司机
public Driver(String driverName){name = driverName;} //构造函数
};
class Engine{ //引擎类
public String engineNo; //引擎编号
public Engine(String engineNo){ this.engineNo = engineNo; } //构造函数
};
public class Car{ //汽车类
static final int (1) = 7; //定义最多载客数
static final int MAX_WHEELS = 5; //定义最多轮胎数
protected Engine engine;
protected Driver driver;
protected Body body = new Body();
protected Wheel[] wheels;
protected Passenger[] passengers;
public Car(Driver driver){ //构造函数
(2) .driver = driver;
engine = new Engine("TX6536 型号引擎");
wheels = new Wheel[MAX_WHEELS];
passengers = new Passenger[MAX_PASSENGERS];
for (int index = 0; index < MAX_WHEELS; index++){
wheels[index] = new Wheel();
}
for (int index = 0; index < MAX_PASSENGERS; index++){
passengers[index] = null;
}
}
int getPassengerNumber(){ //获取车上乘客数量
//此处代码省略
}
void getOnPassenger(Passenger aPassenger ){ //乘客上车
//此处代码省略
}
void run(){ //开车
if( (3) ){ System.out.println("司机尚未上车!"); return;}
//此处代码省略
}
public static void main(String args[]){
Driver driver = new Driver("第五路公交车司机");
Car car = new Car( (4) );
for (int index = 0 ; index < MAX_PASSENGERS; index ++)
car.getOnPassenger( (5) Passenger());
car.run();
}
}
第5题:
阅读以下关于某订单管理系统的技术说明、部分UML类图及C++代码,将C++程序中(1)~(5)空缺处的语句填写完整。
[说明]
某订单管理系统的部分UML类图如图5-15所示。
图5-15中,Product表示产品,ProductList表示产品目录,Order表示产品订单,Orderltem表示产品订单中的一个条目,OrderList表示订单列表,SalesSystem提供订单管理系统的操作接口。
请完善类Order的成员函数getOrderedAmount()和类SalesSystem的statistic()方法,各个类的属性及部分方法定义参见下面的C++代码。
[C++代码]