程序设计课程设计

李 晶 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字节的无效

验收

  • 验收当天小组内所有同学必须到场接受检查;口小组内不允许出现只负责文字内容或只负责收集数据的成员;
  • 如果有同学单独负责测试,那么请按照软件工程的具体要求出具完整的测试报告并给出测试用例。

评价标准

  • 态度
    课堂表现
    抄袭情况(一经发现零分处理)作业完成情况
  • 是否正确运行
    是否遵守编程规范(参考附件)是否有容错机制
    界面是否友好是否模块化是否注释
    实践报告内容及格式

程序截屏

程序下载

链接:https://pan.baidu.com/s/12FlZbQzVNKENnPvPGsy4oQ
提取码:1234

北京邮电大学2021年C语言航空售票系统相关推荐

  1. 毕业生在腾讯、百度、字节跳动就业人数全国高校第一!北京邮电大学2021届毕业生就业质量报告...

    原数据来自 北京邮电大学,转载于 博雅数据库 https://xxgk.bupt.edu.cn/info/1102/2579.htm 北京邮电大学,教育部直属,工信部共建,以信息科技为特色,工学门类为 ...

  2. 北邮计算机学院英语面试,北京邮电大学2021计算机与软件考研数据分析

    北京邮电大学 计算机学院.网安学院复试录取数据如下: 以上统计不包含专项计划,报考"退役大学生士兵"计划的考生,按照所报考专业,总分降20分. 根据初试报考专业和学习方式(第一志愿 ...

  3. 北邮计算机专业的培养方案,现代邮政学院2016级专业培养方案-北京邮电大学.PDF...

    现代邮政学院2016级专业培养方案-北京邮电大学 现代邮政学院 2016 级本科专业培养方案 现代邮政学院 编印 教 务 处 2016 年6 月 目 录 一.北京邮电大学关于修订2012 年版本科专业 ...

  4. 学计算机的能跨数媒吗,北京邮电大学2020年考研829数字媒体基础综合考试大纲...

    考研大纲是考研学生复习的重要参考资料,它指出了所考科目的大致考试范围,也是考研命题的重要参考依据.2020考研大纲已经陆续公布,包括公共课考试大纲和专业课统考科目考试大纲,而自命题科目考试大纲则一般由 ...

  5. 北京邮电计算机考研复试内容,北京邮电大学2017年计算机学院硕士复试内容_北邮考研论坛.pdf...

    北京邮电大学2017年计算机学院硕士复试内容_北邮考研论坛 北京邮电大学2017年计算机学院硕士复试内容 笔试时间 专业课笔试相关参考 专业代码.名称 专业课笔试内容 (分钟) 书目 一.1.编译程序 ...

  6. 南邮计算机2021进面分数,南京邮电大学2021年硕士研究生复试分数线+调剂信息汇总...

    南京邮电大学硕士研究生招生办近日公布了今年硕士研究生复试各学院的分数线,调剂专业计划数量,以及复试录取方法.包含了复试时间,复试内容等信息.麦麦下面就简单汇总了下.方便各位报考的考生参考. 注意下今天 ...

  7. 北邮计算机学院崔哲域,邂逅北邮 是最美的期待—北京邮电大学2019级本科生开学典礼采访纪实...

    8月25日,北京邮电大学2019级本科生开学典礼在沙河校区举行.19级新生们聆听了师长们的谆谆教诲与美好祝福,开启了对美好大学生活的憧憬与希望.请跟随小编的镜头走近这些充满新时代青春气息.朝气蓬勃的萌 ...

  8. 北邮计算机学院学生会军训,在北京邮电大学2015级本科生军训结训典礼上的讲话...

    2015年9月25日在北京邮电大学2015级本科生军训结训典礼上的讲话 乔建永  校长 各位教官.老师们,同学们: 今天,我们在这里隆重举行2015级本科生军训结训典礼.我谨代表学校向圆满完成军训任务 ...

  9. 浙江大学计算机科学与技术学院2014届本科生毕业典礼活动,北京邮电大学2014届本科生毕业典礼隆重举行...

    6月24日上午,北京邮电大学2014届本科生毕业典礼在校本部体育场隆重举行.校党委书记.校友总会会长王亚杰,校长乔建永,校党委副书记赵纪宁.曲昭伟.董晞,副校长杨放春.温向明.郭军,校学位委员会主任杨 ...

最新文章

  1. 从零开始一起学习SLAM | SLAM有什么用?
  2. Spring Boot:自定义starter
  3. mac生成linux下可执行的.go二进制文件
  4. Spring的配置文件详解
  5. js微信抢红包脚本代码_使用AutoJs实现微信抢红包的代码
  6. 数据库(3)——关系
  7. 变更控制管理流程图_制度是最好的老板,流程就是最好的管理!流程建立法则(附案例)...
  8. 造轮子是什么意思_程序员为什么热衷于造轮子,升职加薪吗?
  9. android.hardware.Camera类及其标准接口介绍
  10. 专注于 web报表, web打印, 自定义web表单, web工作流管理系统 方面的技术
  11. ECCV 2020 论文大盘点-场景解析篇
  12. 强迫症设计师最爱的对称构图,促销模板
  13. java反射经典实例 Java Reflection Cookbook
  14. DEX VMP与ARM VMP
  15. eclipse: workspace出错导致无法启用的解决
  16. fedora 主题美化
  17. 指纹识别算法c++实现
  18. 安徽省芜湖市谷歌卫星地图下载
  19. Spark入门程序(idea,scala)
  20. wan端口未连接怎么弄_路由器wan口网线未连接(wan口未插网线)的解决方法

热门文章

  1. 使用ListBox控件,选中ListBoxItem中的TextBox后,如何改变SelectedItem
  2. android activity 叠加 软键盘,软键盘相关
  3. java 状态机工作流_7.4.14 状态机工作流(1)
  4. 1.2 网络安全法律法规
  5. 【Android 高性能音频】AAudio 缓冲区控制 ( XRun | 欠载 UnderRun | 超限 OverRun | 获取缓冲区大小 | 设置缓冲区大小 )
  6. IDEA 社区版插件(个人)
  7. java buttongroup方框_Swing之ButtonGroup用法实例 | 学步园
  8. 10种锻炼思维的方法,让你大脑更强大!
  9. 【深度学习、工程实践】深度学习进行情感分析(2)--LSTM
  10. 【OpenGL ES】帧缓冲区对象FBO