[C++]用C++实现简单的一卡通点餐小项目

1 项目描述

学校有一百个普通学生,每个学生有一个饭卡,可以给刷卡和充值
有10个研究生,研究生比普通学生增加了新的变量:工资wage
每个学生都可以到饭堂点菜
饭堂有10个员工,员工也持有一个饭卡,可以点菜,但是在原有的菜价的基础上优惠10%
员工和学生的饭卡中的余额初始化为随机数50-200元之间

2 系统逻辑

用户(普通学生,研究生或者员工)通过终端输入姓名,登录成功后显示该用户的对应信息
登录成功后列出菜单等待点菜,点菜成功后显示余额。

3 要求

使用面向对象方法来编程
学生学号和姓名使用const成员
使用vector容器来存储菜单

4 分析

[饭卡]
属性: 余额
方法: 刷卡 充值 显示余额

[普通学生] 继承 [饭卡]
属性: 学号 姓名
方法: 点菜 login 显示信息

[研究生] 继承 普通学生
属性:工资wage
方法:显示信息

[员工] 继承 [饭卡]
属性: 姓名
方法:点菜 login 显示信息

[饭堂]
属性: 菜单(菜名, 菜价)
方法: 列出菜单 获取菜价

5 系统时序

  1. 登录

  2. 显示该用户的对应信息

  3. 列出菜单

  4. 点菜

  5. 显示余额。

6 系统框架

在这里插入图片描述

7 类的编写

根据框架图,整理类之间的关系,实现每个类中的属性和方法,再实例化,代码如下:

typedef struct _MENU
{
	string name;//菜名
	float price;//菜价
}Menu;

//饭堂
class cateen
{
private:
    static Menu menu[5];//菜单
     	
public:
     //罗列显示菜单
     static void list()
	 {
		cout<<"菜单名\t价格"<<endl;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值