程序设计课程设计
李 晶 lijingjing@bupt.edu.cn
孙鹏飞 sunpengfei@bupt.edu.cn
杨金翠 jincuiyang@bupt.edu.cn
刁婷 diaoting@bupt.edu.cn
李峥 lizhengsse@bupt.edu.cn
参考资料
C语言程序设计的教材及相关课堂资料
搜索引擎
时间表(物联网)
实践要求
C语言
两个题目,任选其一;
分组完成,五人一组,专业内自愿组合﹔
开发环境:VC/Visual Studio/Dev C++/C Free等。
要求:
提供命令行操作,无需图形界面模块化结构
遵守编程规范界面友好运行正确具有容错机制
实践内容
航空售票系统
订餐系统
航空售票系统系统
服务人群︰
购票用户。购票用户信息包含∶用户ID、姓名、性别、电话、密码、邮箱
航空公司管理员。每个航空公司一名管理员,航空公司管理员信息包含∶管理员ID、所属航空公司、姓名、邮箱、密码
要求∶
用户ID、管理员ID均为字母数字组合的字符串,长度6-10个字符
电话号码为11位数字
邮箱必须符合规范**@*.
航空售票系统
航班信息包含∶
航班号、所属航空公司、起飞地、降落地、起飞时间、预计空中飞行时间、舱位等级及相应座位号、机型、准点率、各等级票价、飞行员(两名)以及相应舱位的余票数等。
要求︰
航班号∶2位字母+4位数字飞行时间︰符合时间格式hh:mm起飞地、降落地∶为国内真实城市
座位号∶符合飞机座位号形式,例如经济舱Y34A准点率∶百分比的形式
机型∶例如波音737等假设∶
系统内的所有航班的每天执飞一次,且发生在每天的固定时间。
航空售票系统
购票用户功能∶
登陆∶输入用户ID和密码登陆系统。
航班查询∶根据系统提供的信息进行航班查询。根据航班号以及出发时间查询;
根据出发城市、到达城市以及出发时间查询;
可用起飞时间段、航空公司、舱位、机型等过滤查询结果根据起飞时间排序所有航班;
同一航班因为有不同舱位等级,可能有不同价格,根据航班的最低价格排序所有航班,但每个航班的不同舱位价格都应显示出来;
查询之后允许用户购票﹔
系统也可以有热门航班推荐,可根据价格或热点旅游地城市等来推荐,此处可自行确定用什么规则来推荐。
航空售票系统
购票用户功能︰
用户购票:用户根据需要浏览并可选择感兴趣的航班。
假设∶
系统只提供直飞航班;
同一个订单可包含多个航班,可以包含多个乘机人。同一名用户购买的自己乘坐的多个航班的时间不能冲突﹔规定一名用户一天最多购买五张航班机票;
每个航班购票人数不能超过座位总数;
同一天内同一个乘机人的不同航班,要保证时间顺序上前一段航程的目的地与后一段航程的出发地在允许的时间范围内可到达。
航空售票系统购票
用户功能:
个人信息管理
对个人信息中的电话、密码及邮箱进行修改取消订单
在未付款之前用户可以取消自己的订单假设∶可模拟付款
查询购票后的订单
查看用户曾经的购票记录
航空售票系统
航空公司管理员功能︰
登陆:输入管理员ID和密码登陆系统。订单管理︰
查看用户订单情况∶
·查询管理员自己所属航空公司的航班的订票情况(各航班已被订票的详细信息,如何时哪个用户购买了哪个航班的哪个座位)
统计用户订单信息∶
·按已购票人数排序还未起飞的本航空公司所有的航班信息按飞机上座率排序已经飞行结束的所有历史航班信息(可以按日期分区段进行排序显示)
·按航班总票价收入排序已经飞行结束的所有历史航班信息(可以按曰期分区段进行排序显示),并可计算显示出总票价收入
航空售票系统
航空公司管理员功能∶
航班管理:针对管理员本航空公司开设的航班
航班查询:查询所有开设的航班信息
添加航班︰添加一个新的航班
·同一名飞行员的飞行时间不能冲突﹔
同一名飞行员执飞的前一个航班的目的地与后一个航班的出发地在时间上保证可到达﹔
航班号不能重复;
添加航班的最后一步为发布,发布之前可以修改和取消添加。
个人信息管理
对个人信息中的密码及邮箱进行修改
作业提交
设计报告内容︰
系统总体设计
系统总体功能描述(包含模块图及整个系统的总体功能描述)接口定义规范(按照什么原则来命名接口)
系统的数据结构描述(系统需要处理什么样的数据,这些数据以什么形式存储及程序运行过程中使用的数据结构描述)
系统的开发环境及运行环境描述(包含软硬件环境)模块详细设计
功能概述
处理流程(包含流程图及详细的处理流程)
模块的输入输出(包含输入输出的数据描述及数据结构或存储格式描述)模块的接口描述(包含接口名字、接口参数名、参数类型、参数描述,返回值名,返回值类型、返回值描述,接口的作用)
每个功能的边界情况描述及处理方法
作业提交
提交方式
.2021年9月6日19:00之前
.上传到爱课堂
.上传文件为0字节的无效
1