c++编程题Word文档下载推荐.docx
- 文档编号:19753115
- 上传时间:2023-01-09
- 格式:DOCX
- 页数:12
- 大小:18.27KB
c++编程题Word文档下载推荐.docx
《c++编程题Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《c++编程题Word文档下载推荐.docx(12页珍藏版)》请在冰豆网上搜索。
RectangleMyRectangle(100,20,50,80);
intArea=MyRectangle.GetArea();
cout<
<
"
Area:
<
Area<
\n"
;
return0;
程序运行输出:
3000
UpperLeftXCoordinate:
20
4.2设计一个程序。
设计一个立方体类Box,它能计算并输出立方体的体积和表面积。
#include
iostream>
using
namespace
std;
class
Box
{public:
float
L;
getBMJ(){return
L*L*6;
getTJ(){return
L*L;
}
Box(float
in){L=in;
void
main()
{
r(10);
cout<
"
边长:
10\n表面积:
r.getBMJ()<
\n体积:
r.getTJ();
4.3设计一个汽车类vehicle,包含的数据成员有车轮个数wheels和车重weight。
小车类car是它的派生类,其中包含载人数passenger_load。
每个类都有相关数据的输出方法。
在主程序中定义一个car类对象,对其车轮个数、车重、载人数进行设置并显示。
iomanip.h>
classvehicle
//汽车类,包含车轮数和车重
vehicle(int,float);
intget_wheels();
floatget_weight();
voidshow();
protected:
intwheels;
//车轮数
floatweight;
//车重量,单位吨
classcar:
privatevehicle
//小车类是汽车类的私有派生类,包含载客数
car(intwheels,floatweight,intpassengers);
intget_passengers();
intpassenger_load;
//额定载客数
classtruck:
//卡车类是汽车类的私有派生类,包含载人数和载重量
truck(intwheels,floatweight,intpassengers,floatmax_load);
//额定载人数
floatpayload;
//额定载重量,单位吨
vehicle:
vehicle(intwl,floatwt)
wheels=wl;
weight=wt;
intvehicle:
get_wheels()
returnwheels;
floatvehicle:
get_weight()
returnweight;
voidvehicle:
show()
车轮数:
setw(3)<
wheels<
个\n车身重:
weight<
吨\n"
car:
car(intwheels,floatweight,intpassengers):
vehicle(wheels,weight)
passenger_load=passengers;
intcar:
get_passengers()
returnpassenger_load;
voidcar:
车
型:
小汽车\n"
show();
载客数:
passenger_load<
人\n\n"
truck:
truck(intwheels,floatweight,intpassengers,floatmax_load):
payload=max_load;
inttruck:
get_passengers()
voidtruck:
大卡车\n"
载人数:
人\n"
载重量:
payload<
吨\n\n"
voidmain()
私有派生类相关验证程序
MicrosoftVisualC++构建\n"
setw(45)<
(C)2009/10/28郭呈祥\n\n"
carcar(4,3.6,5);
//小车类参数分别为“车轮数、车身重以及额定载客数”
trucktru(10,10.0,3,35);
//卡车类参数分别为“车轮数、车身重、载人数以及额定载重量”
数据验证结果如下:
car.show();
tru.show();
4.4定义一个日期类Date,包含年、月、日三个数据成员,以及一个求第二天日期的成员函数和输出日期的成员函数。
classDate
intyear,month,day;
Date(inty,intm,intd)
year=y;
month=m;
day=d;
voidnextday();
voiddisplay()
year<
/"
month<
day<
endl;
voidDate:
nextday()
inttotaldays[2][12]={{31,28,31,30,31,30,31,31,30,31,30,31},{31,29,31,30,31,30,31,31,30,31,30,31}};
day++;
intleap=(year%400==0||year%4==0&
&
year%100!
=0);
if(day>
totaldays[leap][month-1])
day=1;
month++;
if(month>
12)
month=1;
year++;
voidmain()
intd,m,y;
请输入年、月、日:
cin>
>
y>
m>
d;
Dated1(y,m,d);
今天是:
d1.display();
d1.nextday();
明天是:
4.5设计一个程序。
定义一个圆类,有数据成员半径radis(半径),计算圆的面积和周长,写出主函数测试你编写的类。
pi
=
3.14;
R
radis;
getMJ(){return
radis*radis*pi;
getZC(){return
radis*2*pi;
R(float
in){radis=in;
半径:
10\n周长:
r.getZC()<
\n面积:
r.getMJ();
4.6编写一个程序。
用名为max的函数模板计算三个参数中的最大值,用整数、字符和浮点数测试所编写的程序。
template
typename
O>
O
Max(O
a,O
b,
c){return
a>
b?
c?
a:
c:
b>
b:
c;
Max(9,1,8)<
Max(7.0,3.2,9.9)<
Max('
a'
'
z'
b'
);
4.7编写一个程序计算“三角形、正方形、圆形”三种图形的面积。
要求:
a)抽象出一个基类base;
b)在其中说明一个虚函数用来求面积;
c)利用派生类定义“三角形、正方形、圆形”;
d)编写主函数并测试。
base
virtual
H*W;
H,W;
R:
public
H*H*3.14;
in){H=in;
A:
(H*W)/2;
A(float
in_H,float
in_w){H=in_H;
W=in_w;
S:
H*H;
S(float
main()
A
a(10,5);
S
s(10);
圆:
10\n面积:
r.getMJ()<
endl
\n三角:
高:
10,底:
5\n面积:
a.getMJ()<
35.
\n正方形:
边长:
s.getMJ();
4.8编程实现抽象类Employee,派生类Manger和HourlyWorker,Employee有数据成员姓名name和工号ID,Manger有数据成员sal,代表经理的月工资,HourlyWorker有wage和hours,分别代表钟点工的每小时的工资数和月工作时数,定义的所有类中必须包含构造函数、析构函数、修改和获取所有数据成员的成员函数,以及虚函数来计算职员的工资、输出职员的姓名name和工号ID。
(
string>
Employee
string
name;
int
id;
getSal(){return
0;
Employee():
name("
未命名"
),id(0){};
~Employee(){cout<
析构\n"
set(string
N,int
I){id=I;
name=N;
showSal()
\n姓名:
name<
工号:
id<
工资:
getSal()<
Manger:
Manger(int
S){sal=S;
sal;
HourlyWorker:
HourlyWorker(int
W,int
H){wage=W;
hours=H;
wage*hours;
wage,hours;
HourlyWorker
h(10,20);
h.set("
小时工A"
777);
h.showSal();
Manger
m(999);
m.set("
经理A"
888);
m.showSal();
4.9定义一个处理日期的类TDate,它有3个私有数据成员:
Month,Day,Year和若干个公有成员函数,并实现如下要求:
①构造函数重载;
②成员函数设置缺省参数;
③定义一个友元函数来打印日期;
④定义一个非静态成员函数设置日期;
⑤可使用不同的构造函数来创建不同的对象。
include
TDate
TDate():
Year(1900),Month
(1),Day
(1){;
TDate(int
Y,
M=1,
D=1){Month=M;
Day=D;
Year=Y;
set(int
Y=1990,
riend
show(TDate&
in);
Month,Day,Year;
in){cout<
in.Year<
年"
in.Month<
月"
in.Day<
日\n"
t1;
t2(2014);
t3(2015,6,5);
show(t1);
show(t2);
show(t3);
t3.set(1999);
4.10回答下面问题。
下面列出了由三个文件main.cpp、MyClass.h和MyClass.cpp组成的一个程序。
文件main.cpp中实现了主函数;
文件MyClass.h中定义了类MyClass;
文件MyClass.cpp中实现了类MyClass的成员函数。
题中没有给出三个文件的完整实现。
仔细阅读所给的程序,根据题意补充文件MyClass.h和文件MyClass.cpp的内容。
a.将成员变量定义为私有的;
b.不要增加题中没有用到的类成员。
/********************************************************/
//文件main.cpp
#include"
MyClass.h"
voidmain()
MyClassobj(3.3);
cout<
obj.GetMember()<
endl;
obj.SetMember(5.6);
/***********************************************************************/
//文件MyClass.cpp
floatMyClass:
GetMember()
returnmember;
voidMyClass:
SetMember(floatmember)
MyClass:
member=member;
//在这里写出构造函数的实现函数
MyClass(floatin)
Member=in;
//文件MyClass.h
//类MyClass的定义
classMyClass{
//在下面写出类的定义体
Public:
MyClass(floatin)
FloatGetMember();
VoidSetMember(floatmember);
Private:
Floatmember;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c+ 编程