C程序设计考试题及答案

上传人:cl****1 文档编号:496760956 上传时间:2024-01-16 格式:DOC 页数:8 大小:31KB
返回 下载 相关 举报
C程序设计考试题及答案_第1页
第1页 / 共8页
C程序设计考试题及答案_第2页
第2页 / 共8页
C程序设计考试题及答案_第3页
第3页 / 共8页
C程序设计考试题及答案_第4页
第4页 / 共8页
C程序设计考试题及答案_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《C程序设计考试题及答案》由会员分享,可在线阅读,更多相关《C程序设计考试题及答案(8页珍藏版)》请在金锄头文库上搜索。

1、C+程序设计1、声明个CPU类,包含等级(rank),频率(frequency),电压(voltage)属性,有两个公有成员函数run(函数功能:输出“cpu正在运行”),stop(函数功能:输出“cpu停止运行”)。其中rank为枚举型CPU_Rank,声明为enum CPU_RankP1=1,P2,P3,P4,P5,P6,P7,frequency为单位是MHz的整型数,voltage为double型电压值。编写构造函数和析构函数,在主函数中显示它们的调用顺序。2、 定义复数类COMPLEX,并用成员函数为复数类COMPLEX重载加、减及赋值运算符操作。3、写一个程序,定义一个抽象类Shap

2、e,由它派生3个类:Square(正方形)、Trapezoid(梯形)和Triangle三角形。用虚函数分别计算几种图形面积、并求它们的和。要求用基类指针数组,使它每一个元素指向一个派生类对象。4、已知交通工具类定义如下。要求:(1)实现这个类;(2)定义并实现一个小车类car,是它的公有派生类,小车本身的私有属性有载人数,小车的函数有init(设置车轮数,重量和载人数),getpassenger(获取载人数),print(打印车轮数,重量和载人数)。5、声明一个车(vehicle)基类,具有maxspeed、weight成员变量,run、stop成员函数(简单输出提示“车正在行进”,“车停止

3、”),由此派生出自行车类(bicycle)、汽车类(motorcar)。自行车类有高度(height)属性,汽车(motorcar) 类有座位数(seatnum)。从bicycle和motorcar派生出摩托车类(motorcycle),在继承过程中,注意把vehicle 设置为虚基类,同时编写各个类的构造函数和析构函数,在主函数中建立各个类对象,观察执行情况。6、定义类X、Y、Z,函数h(X *),满足:类X有私有成员i,Y的成员函数g(X *)是X的友元函数,实现对X的成员i加1;类Z是类X的友元类,其成员函数f(X *)实现对X的成员i加5;函数h(X *)是X的友元函数,实现对X的成员

4、i加10。在一个文件中定义和实现类,在另一个文件中实现main()函数。提示:按Y、Z、X顺序定义类,在Y、Z类前 前向声明X , X * x表示X类对象指针x,访问x对象数据成员i变量的形式为 x-i。答案1、#include enum CPU_Rank P1=1,P2,P3,P4,P5,P6,P7;class CPUprivate: CPU_Rank rank; int frequency; float voltage;public: void run(); void stop(); CPU(CPU_Rank r,int f,float v); CPU(); CPU(CPU &c); ;v

5、oid CPU:run() coutCPU正在运行endl; void CPU:stop() coutCPU停止运行endl;(1分) CPU:CPU(CPU_Rank r,int f,float v) rank=r; frequency=f;voltage=v;cout构造了一个CPU:endl; CPU:CPU() cout析构了一个CPU:wheels=wheels;this-weight=weight;coutwheelsendl;int vehicle:get_wheels()return wheels;float vehicle:get_weight()return weight;

6、void vehicle:print()cout车轮数:wheels,重量:weightendl;class car:public vehicleprivate:int passengers;public:void init(int wheels,float weight,int pass);int getpassenger();void print();;void car:init(int wheels,float weight,int pass)vehicle:init(wheels,weight);passengers=pass;int car:getpassenger()return

7、passengers;void car:print()vehicle:print();cout可载人数:passengersendl;4、#include class Shapepublic:virtual double area()const=0;class Square:public Shapepublic:Square(double s):side(s)double area() constreturn side*side;private:double side;class Trapezoid:public Shapepublic:Trapezoid(double i,double j,

8、double k):a(i),b(j),h(k)double area() constreturn (a+b)*h/2);private:double a,b,h;class Triangle:public Shapepublic:Triangle(double i,double j):w(i),h(j)double area() constreturn(w*h/2);private:double w,h;void main()Shape *p5;Square se(5);Trapezoid td(2,5,4);Triangle te(5,8);p0=&se;p1=&td;p2=&te;dou

9、ble da=0;for(int i=0;iarea();cout总面积是:daendl;5、#include class vehicleprivate: int maxspeed; int weight;public: vehicle(int m,int w) maxspeed=m; weight=w; coutvehicle构造函数endl; vehicle() coutvehicle析构函数endl; void run() cout车在行进中endl; void stop() cout车停止endl;class bicycle:virtual public vehicleprivate:

10、 double height;public:bicycle(int m,int w,double h):vehicle(m,w)height=h;coutbicycle构造函数endl;bicycle()coutbicycle析构函数endl;class motorcar:virtual public vehicleprivate: int seatnum;public:motorcar(int m,int w,int s):vehicle(m,w)seatnum=s;coutmotorcar构造函数endl;motorcar()coutmotorcar析构函数endl;class motorcycle:public bicycle,public motorcarpublic: motorcycle(int m,int w,double h,int s):bicycle(m,w,h),motorcar(m,w,s),vehicle(m,w) coutmotorcycle构造函数endl; motorcycle() coutmotorcycle析构函数endl;void main()vehicle a(200,3); a.run(); a.stop(); bicycle b(50,1,1.5); b

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 习题/试题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号