C++食堂管理系统[2024-07-05]

C++食堂管理系统[2024-07-05]

食堂管理系统——简化版本
功能
学生
登录(密码无回显或用代替)
查询个人信息(学号、姓名、手机号、所属学院、所属专业、卡内余额)
修改个人信息(手机号、密码)
查询点餐明细信息(商家编号、商家名称、消费日期、消费时间、食品名称、食品类别、数量、单价、消费金额)
注:学生打八折,因此消费金额=数量
单价0.8
教师
登录(密码无回显或用
代替)
查询个人信息(学号、姓名、手机号、所属学院、卡内余额)
修改个人信息(手机号、密码)
查询点餐明细信息(商家编号、商家名称、消费日期、消费时间、食品名称、食品类别、数量、单价、消费金额)
注:教师打九折,因此消费金额=数量单价0.9

业务要求

学校人员分两类:学生、教师
学生(初始化)
基本信息:
学号
统一长度,10个数字
姓名
最多可存储8个汉字
手机号
统一长度,11位数字,要求有基本的合法性校验
密码
要加密存储,算法自定
密码要有一定的复杂度要求
长度不小于8个字符,最长不超过20个字符
至少有一个大写字母
至少有一个小写字母
至少有一个数字
至少有一个标点符号
所属学院
以内蒙古大学各学院为例
所属专业
以内蒙古大学各学院所开专业为例
卡余额
数值类型,保留2位小数
教师(初始化)
基本信息:
职工号
统一长度,9个数字
姓名
最多可存储8个汉字
手机号
统一长度,11位数字,要求有基本的合法性校验
密码
要加密存储,算法自定
密码要有一定的复杂度要求
长度不小于8个字符,最长不超过20个字符
至少有一个大写字母
至少有一个小写字母
至少有一个数字
至少有一个标点符号
所属学院
以内蒙古大学各学院为例
卡余额
数值类型,保留2位小数
静态初始化(初始化数据写在程序中,不能从文件中读取)
学生
数量要求
至少36名
至少3个学院
每个学院至少3个专业
每个专业至少4名学生
内容要求
手机号
要各不相同,且符合目前手机号规则
密码
初始化语句中给出的明码,但存储为加密后的密码
所属学院,所属专业
必须为内蒙古大学的某学院,某专业
卡余额
初始值大于0
教师
数量要求
至少9名
至少3个学院
每个学院至少3名教师
内容要求
手机号
要各不相同,且符合目前手机号规则
密码
初始化语句中给出的明码,但存储为加密后的密码
所属学院
必须为内蒙古大学的某学院
卡余额
初始值大于0
点餐信息
学生点餐
初始化2个学生,每个学生3条记录,合计6条
教师点餐
初始化2个教师,每个教师3条记录,合计6条
第2题
基本功能要求与第1题相同
面向对象动态存储难度分等级(注:前三级的链表均为单向链表)
一级:学生采用面向对象设计,数据成员全部私有,在堆上分配,使用链表处理
二级:满足第一级的基础上
教师也采用面向对象设计,数据成员全部私有
且在堆上分配,使用单链表处理
三级:满足第二级的基础上
点餐信息也采用面向对象设计,数据成员全部私有,使用链表
且有函数重载
四级:满足第三级的基础上
使用函数重载、虚函数、纯虚函数特性
实际调用中要体现虚函数的作用
(父类对象指针指向子类对象,然后调用虚函数)
其它用动态分配可带来存储空间优势的,不用静态分配。
(如姓名等)
使用双向链表
五级:满足第四级的基础上
有静态函数成员的使用,使用了类模板,函数模板
有复制构造函数,赋值运算符重载
使用双向循环链表
其它要求
变量命名要有明确意义,或用单词或单词缩写,也可用拼音
计分5分,有一个无意义的变量名,扣1分,扣完为止
尽量不用全局变量
计分5分,有一个全局变量,扣1分,扣完为止
函数体要求
每个函数体中每行一条语句
每个函数体中每个函数最多不超过100行
计分5分,违反一条,扣1分,扣完为止
文件注释:
按“代码规则及SVN.ppt”中要求
计分5分,有一项不符合要求,扣1分,扣完为止
函数注释(加在实现部分)
按“代码规则及SVN.ppt”中要求
计分5分,有一项不符合要求,扣1分,扣完为止
其他注释
按“代码规则及SVN.ppt”中要求
计分5分,有一项不符合要求,扣1分,扣完为止
存储字符串要用char类型,不能用string类型
用char数组
如果发现用string类型,此项0分
生成
有错就扣分
运行
运行出错就扣分
无法运行计0分,功能分也是0分
VS设置
字符集——多字节字符集(一个汉字占两个字节)
调整字体:按下CTRL,滚动鼠标滚轮
工具——选项——源代码管理——VisualSVN

源码联系UP主 -> https://space.bilibili.com/329101171

  • 6
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值