第一题:设计任务
基础程序设计题:定义一个点类(Point),圆类(Circle)和圆柱体类(Cylinder)的层次结构。圆包括圆心和半径两个数据成员,圆心有点类的所有特征。圆柱体类由半径和高组成。要求各类提供支持初始化的构造函数和显示自己成员的成员函数。编写主程序,测试这个层次结构,输出圆柱体的相关信息.
主要步骤:1定义点类,然后令圆类公有继承点类,接着让圆柱体类公有继承圆类.
class point
class Circle:public point
class Column:public Circle
2定义主函数,输入各变量,然后将结构显示在屏上.
cout<<\"请输入两个整数:\";
cin>>a>>b;
cout<<\"请输入半径:\";
cin>>c;
cout<<\"请输入高:\";
cin>>d;
Column co(a,b,c,d);
实验结果:
请输入两个整数:3 4
请输入半径:5
请输入高:6
原点坐标为:(3,4)
圆柱体的半径为:5
圆柱体的表面积为:345.4
圆柱体的体积为:471
Press any key to continue
第二题:设计任务
应用程序设计题: 编写一个小型公司的工资管理系统。该公司主要有四类人员:包括经理,兼职技术人员,销售员,销售经理。要求存储并显示每类人员的编号(从2000起开
始编号),姓名和月薪。其中月薪的计算方法:经理固定月薪10000元,兼职技术人员200元小时,销售人员为当月销售金额的5%,销售经理的保底工资6000另外加其所管部门销售额的6%合计。
第二题说明:
主要步骤:1.设置employee.h,声明各个类,并声明一个文件异常处理类:
class Employee
class Technician:public Employee
class Saleman:virtual public Employee
class Manager:virtual public Employee
class Salesmanager:public Saleman,public Manager
class FileException
2.设置employee.cpp,包含进employee.h文件,定义上述类的各个函数的函数体。
3.设置主函数,包含进employee.cpp文件,设置选择菜单,然后根据选项进行适当的处理。
int selectmenu()
{
int choose;
cout<<\"\\n\********小型公司工资管理程序*******\\n\";
cout<<\"\1.计算当月工资并保存\\n\";
cout<<\"\2.查看当月工资\\n\";
cout<<\"\3.退出程序\\n\";
cout<<\"\选择1-3:\";
for(;;)
{
cin>>choose;
if(choose<1||choose>3)
cout<<\"\\n输入错误,重选1-3\";
else break;
}
return choose;
}
void handlemenu()
{
for(;;)
{
switch(selectmenu())
{
case 1:
write();
break;
case 2:
read();
break;
case 3:
cout<<\"\ 再见!\\n\";
return;
}
}
}
int main()
{
handlemenu();
return 0;
}
实验结果:********小型公司工资管理程序*******
1.计算当月工资并保存
2.查看当月工资
3.退出程序
选择1-3:1
请输入兼职技术人员王杰本月工作时间(小时):100
请输入销售员李铜本月销售额(元):10000
请输入销售经理董力民所管部门本月销售量(元):100000
本月工资信息已存入文件
********小型公司工资管理程序*******
1.计算当月工资并保存
2.查看当月工资
3.退出程序
选择1-3:2
张峰(经理,工号为2000)本月工资:10000
王杰(兼职技术人员,工号为2001)本月工资:20000
李铜(销售员,工号为2002)本月工资:500
董力民(销售经理,工号为2003)本月工资:12000
********小型公司工资管理程序*******
1.计算当月工资并保存
2.查看当月工资
3.退出程序
选择1-3:3
再见!
Press any key to continue
第三题:课程设计
2.设计一个向量加法程序,能够进行简单的向量的加减运算,并能够按照规定的格式输入和显示输出,例如:X=(x1,x2,x3,x4); Y=(y1,y2,y3,y4),则它们之间的加和减运算分别定义为:
X+Y=(x1+ y1, x2+ y2 ,x3+ y3, x4+ y4,)
X-Y=(x1- y1, x2- y2 ,x3- y3, x4-y4,)
通过设计一个向量类,进行相应运算符的重载,以下标的方式计算向量分量,计算上述向量的和与差,输出结果,返回向量长度。
主要步骤:1.类的定义和实现,用于声明类和需要重载的符号(注意:赋值号、下标运算符和括号是不能用友元函数重载的)
class Vetor
{
private:
int size;
int *array;
public:
Vetor(int=1);
Vetor(Vetor& a);
int&operator[](int n);
Vetor&operator+(Vetor c);
Vetor&operator-(Vetor c);
Vetor&operator=(Vetor& a);
int operator()();
~Vetor();
};
2.定义主函数,调用重载符号,输出第一第二个向量,及他们的和、差、向量长度。
cout<<\"first victor=(\";
for(j=0;j<4;j++)
{
int temp=X[j];
if(j>0)
cout<<\
cout< cout<<\")\"< for(j=0;j<4;j++) { int temp=Y[j]; if(j>0) cout<<\ cout< cout<<\")\"< Sub=X-Y; length=X(); cout<<\"length of victor is\"< first victor=(2,3,4,5) second victor=(0,2,4,6) sum=(2,5,8,11) Sub=(2,1,0,-1) length of victor is4 Press any key to continue 因篇幅问题不能全部显示,请点此查看更多更全内容