❶ c++电影订票系统含有多个类的代码
一个实现小型公司的工资管理的程序。
定义一个职员类(Employee),由职员类派生出经理(Manager)、销售人员(Sales)、工程师(Engineer)。要求存储公司职员的工号、姓名和月基本工资,计算月工资并且显示全部信息。月工资的计算方法如下:经理的月基本工资为8000,月工资为绩效系数*月基本工资,销售人员的月基本工资为4000,月工资为月基本工资+销售提成,销售提成为月销售额的5%,工程师的月基本工资为6000,月工资为月基本工资+开发奖励工资,开发奖励工资为300*功能模块完成数量。抽象基类和各派生类均有一个公有成员函数salary_computing() ,用于计算各位职员的工资总额。
设计抽象基类Employee和派生类Manager、Sales和Engineer。主函数中定义了一个基类Employee的动态指针数组 pt2employ,数组长度n来自输入数据
Employee **pt2employ = new Employee*[n];
主函数根据输入的职员类型和职员基本信息,建立相应的类对象,并且取址按序赋给基类指针数组元素,最后遍历基类指针数组 pt2employ,找出具有最高工资的Manager、Sales和Engineer,并且输出。
输入格式: 测试输入包含一个测试用例,该测试用例的第一行输入职员的人数n,接下来n行每一行给出一个职员的基本信息,每行的第一个数字为当前职员的工号,第二个为一个字符串,是职员的姓名,第三个数据是一个字符串,是职员的职位,若职位为Manager,后面跟随一个数字是其绩效系数,若职位为Sales,后面跟随一个数字是其月销售额,若职位为Engineer,后面跟随一个数字是其完成的模块数目。
输出格式:见输出样例
说明:本题中绩效系数、工资等数据均为double型,输出不保留小数部分
输入实例:
6
101 bob Manager 1.4
102 Sam Sales 100000
103 Apple Sales 150000
104 Bill Engineer 12
105 Mike Manager 1.3
106 Henry Engineer 15
输出实例:
Top Manager: 101 bob A Manager with salary 11200
Top Sales: 103 Apple A Sales with salary 11500
Top Engineer: 106 Henry A Engineer with salary 10500
程序代码如下:
#include
#include
#include
using namespace std;
class Employee
{
protected:
int id;
string name;
double basic_salary;
string title;
public:
Employee(int i, string n, double b, string t)
: id(i), name(n), basic_salary(b), title(t) {}
virtual double salary_computing() const = 0;
string get_title() const
{
return title;
}
void print() const
{
cout << id << " " << name << " A " << title << " with salary " << fixed << setprecision(0) << salary_computing() << endl;
}
};
class Manager : public Employee
{
static Employee* top;
double effiency;
public:
Manager(int id, string name, double e)
: Employee(id,name,8000,"Manager"), effiency(e)
{
if(top==NULL || salary_computing() > top->salary_computing())
top = this;
}
double salary_computing() const
{
return effiency * basic_salary;
}
static void printmax()
{
cout << "Top Manager: ";
if(top) top->print();
}
};
Employee* Manager::top = NULL;
class Sales : public Employee
{
static Employee* top;
double sales;
public:
Sales(int id, string name, double s)
: Employee(id,name,4000,"Sales"), sales(s)
{
if(top==NULL || salary_computing() > top->salary_computing())
top = this;
}
double salary_computing() const
{
return basic_salary + 0.05 * sales;
}
static void printmax()
{
cout << "Top Sales: ";
if(top) top->print();
}
};
Employee* Sales::top = NULL;
class Engineer : public Employee
{
static Employee* top;
double num;
public:
Engineer (int id, string name, double m)
: Employee(id,name,6000,"Engineer"), num(m)
{
if(top==NULL || salary_computing() > top->salary_computing())
top = this;
}
double salary_computing() const
{
return basic_salary + 300 * num;
}
static void printmax()
{
cout << "Top Engineer: ";
if(top) top->print();
}
};
Employee* Engineer::top = NULL;
int main()
{
int n, i;
cin >> n;
Employee **pt2employ = new Employee*[n];
for(i=0;i<n;i++)
{
int id;
cin >> id;
string name;
cin >> name;
string title;
cin >> title;
double e;
cin >> e;
if(title == "Manager")
{
pt2employ[i] = new Manager(id,name,e);
}
else if(title == "Sales")
{
pt2employ[i] = new Sales(id,name,e);
}
else if(title == "Engineer")
{
pt2employ[i] = new Engineer(id,name,e);
}
}
Manager::printmax();
Sales::printmax();
Engineer::printmax();
}
❷ 求c语言,电影院售票管理系统的设计与实现的代码
#include<stdio.h>
#include<stdlib.h>
structcell
{
char*name;
inttime;
intseat;
intsaled;
}a,b,c,d;
intsel=0;
voidtitle();
voidsaleproc();
intsaleThread(structcell*ce,intdd);
voidtiupiaoproc();
inttiupiaoThread(structcell*ce);
voidcount();
intinit(structcell*ce,char*name,inttime,intseat)
{
ce->name=name;
ce->time=time;
ce->seat=seat;
ce->saled=0;
return1;
}
intsaleThread(structcell*ce,intdd)
{
if((ce->seat-ce->saled)>=dd)
{
ce->saled+=dd;
printf("售票成功!按ESC键返回主菜单 ");
fflush(stdin);
intcc=_getche();
return1;
}
else
{
printf("售票失败---余票不足!按ESC键返回主菜单 ");
fflush(stdin);
intcc=_getche();
return0;
}
}
voidsaleproc()
{
intf=1;
while(f)
{
system("cls");
printf("*********************************** ");
printf("** ");
printf("*厅影片时间余票* ");
printf("** ");
printf("*A%s%d:%d%3d* ",a.name,a.time/60,a.time%60,a.seat-a.saled);
printf("** ");
printf("*B%s%d:%d%3d* ",b.name,b.time/60,b.time%60,b.seat-b.saled);
printf("** ");
printf("*C%s%d:%d%3d* ",c.name,c.time/60,c.time%60,c.seat-c.saled);
printf("** ");
printf("*D%s%d:%d%3d* ",d.name,d.time/60,d.time%60,d.seat-d.saled);
printf("** ");
printf("*********************************** ");
printf("请选择放映厅(a,b,c,d)和要购的票数(按ESC键返回主菜单)(格式:a5): ");
fflush(stdin);
charcc;
intdd;
dd=_getche();
if(dd==27)
{
f=0;
break;
}
else
{
cc=(char)dd;
}
scanf("%d",&dd);
switch(cc)
{
case'a':
saleThread(&a,dd);
f=0;
break;
case'b':
saleThread(&b,dd);
f=0;
break;
case'c':
saleThread(&c,dd);
f=0;
break;
case'd':
saleThread(&d,dd);
f=0;
break;
default:
break;
}
}
title();
}
inttiupiaoThread(structcell*ce)
{
if(ce->saled==0)
{
printf("撞尼玛鬼了老子一张票都没卖,哪来的退票??? ");
fflush(stdin);
intcc=_getche();
return0;
}
ce->saled--;
printf("退票成功!按任意键返回主菜单 ");
fflush(stdin);
intcc=_getche();
return1;
}
voidtiupiaoproc()
{
intf=1;
while(f)
{
system("cls");
printf("*********************************** ");
printf("** ");
printf("*退票* ");
printf("** ");
printf("*A%-20s* ",a.name);
printf("** ");
printf("*B%-20s* ",b.name);
printf("** ");
printf("*C%-20s* ",c.name);
printf("** ");
printf("*D%-20s* ",d.name);
printf("** ");
printf("*********************************** ");
printf("请输入要退的厅(a,b,c,d): ");
charcc;
fflush(stdin);
scanf("%c",&cc);
if(cc=='')
{
f=0;
break;
}
switch(cc)
{
case'a':
tiupiaoThread(&a);
f=0;
break;
case'b':
tiupiaoThread(&b);
f=0;
break;
case'c':
tiupiaoThread(&c);
f=0;
break;
case'd':
tiupiaoThread(&d);
f=0;
break;
default:
break;
}
}
title();
}
voidcountproc()
{
intf=1;
while(f)
{
system("cls");
printf("*********************************** ");
printf("** ");
printf("*统计* ");
printf("** ");
printf("*A厅:余票%3d上座率%5.2f%%* ",a.seat-a.saled,(((float)a.saled/(float)a.seat)*100));
printf("** ");
printf("*B厅:余票%3d上座率%5.2f%%* ",b.seat-b.saled,(((float)b.saled/(float)b.seat)*100));
printf("** ");
printf("*C厅:余票%3d上座率%5.2f%%* ",c.seat-c.saled,(((float)c.saled/(float)c.seat)*100));
printf("** ");
printf("*D厅:余票%3d上座率%5.2f%%* ",d.seat-d.saled,(((float)d.saled/(float)d.seat)*100));
printf("** ");
printf("*********************************** ");
printf("按ESC键返回主菜单! ");
fflush(stdin);
intcc=_getche();
if(cc==27)
{
f=0;
break;
}
}
title();
}
voidtitle()
{
intf=1;
while(f)
{
system("cls");
printf("*********************************** ");
printf("** ");
printf("*欢迎光临牛B电影院* ");
printf("** ");
printf("*1.售票* ");
printf("** ");
printf("*2.退票* ");
printf("** ");
printf("*3.统计* ");
printf("** ");
printf("*4.退出* ");
printf("** ");
printf("*********************************** ");
printf("请选择:(1,2,3,4) ");
fflush(stdin);
scanf("%d",&sel);
getchar();
switch(sel)
{
case1:
saleproc();
f=0;
break;
case2:
tiupiaoproc();
f=0;
break;
case3:
countproc();
f=0;
break;
case4:
system("exit");
f=0;
break;
default:
break;
}
}
}
intmain(intargc,char*argv[])
{
init(&a,"钢铁侠3",18*60+30,150);
init(&b,"致青春",19*60+30,150);
init(&c,"姜戈",20*60+30,150);
init(&d,"生化危机4",20*60+20,100);
title();
return0;
}
❸ 机票售票系统中的HK,HX,HL,TK等等都表示什么意思,它的状态有多少种都是什么意思
HK,HX,HL是查询本系统在该次航班上所以订座代码,除此之外还有RR,HN。各个代码表示对应的舱位等级。TK出票时限代码。
Eterm指令很多了,比如:
ADM是查看本次航班座位图
ASR是座位预定
NSSW无烟靠窗座位
MOML穆斯林餐食
DEPA被驱逐出境(有人陪伴)
DEPU被驱逐处境(无人陪伴)
这里只能简单说这些了,因为代码实在太多。
❹ 我想知道中航信ETERM系统操作中,国内,国际机票的出票指令是什么
第一步,2rr(r航段项,那项是几就r几) 第二步,xe5(叉掉tktl项) 第三,tktv:2/p1 第四,etdz:2
❺ eterm系统出票的日期格式 AVH/城市对/日期/航空公司代码
这不是出票格式,是查询航班及座位情况。如 AV H PEKSIN/10OCT/SQ 。
❻ 电影院的自助取票机怎么用
买完票会给你发短信,然后里面有取票的码,去自动取票机上输入这个码就行。不同的电影院可能会有不用的码,有的是输入两条,有的是输入一条。短信里都能看到
❼ 基于JSP和MySql的电影院售票管理系统源代码和数据库
基于JSP和MySql的电影院售票管理系统源代码和数据库嗯哪,我有的,