c语言课程设计机房机位预定系统绝对正确,附源代码文档推荐

上传人:粗**** 文档编号:135282054 上传时间:2020-06-14 格式:PDF 页数:16 大小:310.50KB
返回 下载 相关 举报
c语言课程设计机房机位预定系统绝对正确,附源代码文档推荐_第1页
第1页 / 共16页
c语言课程设计机房机位预定系统绝对正确,附源代码文档推荐_第2页
第2页 / 共16页
c语言课程设计机房机位预定系统绝对正确,附源代码文档推荐_第3页
第3页 / 共16页
c语言课程设计机房机位预定系统绝对正确,附源代码文档推荐_第4页
第4页 / 共16页
c语言课程设计机房机位预定系统绝对正确,附源代码文档推荐_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《c语言课程设计机房机位预定系统绝对正确,附源代码文档推荐》由会员分享,可在线阅读,更多相关《c语言课程设计机房机位预定系统绝对正确,附源代码文档推荐(16页珍藏版)》请在金锄头文库上搜索。

1、1 设计目的 机房机位预定系统 2 任务概述 20 台机器 编号 1 到 20 从早八点到晚八点 两小时一个时间段 每次可预定一个 时间段 功能要求 1 系统以菜单方式工作 2 查询 根据输入时间 输出机位信息 3 机位预定 根据输入的时间查询是否有空机位 若有则预约 若无则提供最近的时间 段 另 若用户在非空时间上机 则将用户信息列入等待列表 4 退出预定 根据输入的时间 机器号撤销该事件的预定 5 查询是否有等待信息 若有则提供最优解决方案 等待时间尽量短 若无则显示提 示信息 3 模块划分 4 主要函数说明及其N S图 主函数 int main Menu 当前状态函数 void Menu

2、 主界面 int n w do puts t t 机房机位预约系统 n puts t t 菜单 n puts t t t 1 查询某时间段机位状态 查询某时间段机位状态 puts t t t 2 预定空机位 预定空机位 puts t t t 3 取消预订 取消预订 机房机位预约系统 查询机位预定机位退出预定查询等待信息 puts t t t 4 查询等待信息 查询等待信息 puts t t t 5 退出 退出 puts t t n printf 选择菜单号 1 5 scanf d if n5 w 1 getchar else w 0 while w 1 switch n case 1 Situ

3、ation break case 2 Book break case 3 Cancel break case 4 SearchWaiting break case 5 exit 0 break getch 机位查询 void Situation int time printf 输在 8 20 范围内的时间 scanf d if time20 printf t时间输入错误 n printf 输入在 8 20 范围内的时间 scanf d detail time 函数调用 getchar Menu 机位预定 void Book int time i 0 x y FILE fp char c pri

4、ntf 在 8 20 时间范围内输入你想要预定的时间 scanf d if time20 printf t时间输入错误 n printf t在 8 20 时间范围内输入你想要预定的时间 scanf d detail time 函数调用 if sum T 0 if fp fopen a NULL printf n无法打开文件 n exit 0 printf n t请输入你想要预定的机号 并且留下你的电话号码 n scanf s s wait i number wait i telephonenumber for i 0 i 1 i fwrite fclose fp 向文本文档添加一个结构体单元

5、printf t再次输入你想要预定的时间 n scanf d sum T 预定后该时间段空机位数减1 computer T x 1 预定后该机状态变为1 printf t预订成功 n getchar Menu else printf 这是在这个时间段内未预定的电脑 n for i T 1 i0 printf tThe latest free time is d d n 2 i 8 2 i 10 break printf t你想要预定吗 y n scanf s getchar if c Y c y if fp fopen r NULL printf n无法打开文件 n exit 0 else p

6、rintf waitlist number telephonenumber n for i 0 feof fp i fscanf fp s s fclose fp for i 0 i 10 i prione i printf n t请输入你想要预定的机号 并且留下你的电话号码 n if fp fopen a NULL printf n无法打开文件 n exit 0 scanf s s wait i number wait i telephonenumber for i 0 i 1 i fwrite fclose fp 若等待 就用文件的方式列出当时的等待列表并提 示输入你的等待序号和联系方式

7、printf 再次输入电脑的序号 n scanf d sum T computer T y 1 printf t好了 请等待我们的电话 n Menu else Menu 取消预定 void Cancel int time number printf 在 8 20 时间范围内输入你已经预定的时间 scanf d if time20 printf t输入时间错误 n N printf t在 8 20 时间范围内输入你已经预定的时间 scanf d else printf t输入你预定的机号 scanf d detail time sum T 预定后该时间段空机位数加1 computer T num

8、ber 0 预定后该机状态变为0 printf t取消成功 n getchar Menu 查询等待信息 void SearchWaiting int time i FILE fp printf tInput time you want to search between 8 20 scanf d if time20 printf tWrong time n printf tInput time you want to search between 8 20 scanf d else if fp fopen r NULL printf nCannot open file n exit 0 els

9、e printf waitlist number telephonenumber n for i 0 feof fp i fscanf fp s s fclose fp for i 0 i 10 i prione i Menu 5 程序运行数据及其结果 主菜单 2 机位查询 3 机位预定 4 查询等待信息 6 课程设计心得 课程设计是培养学生综合运用所学知识 发现 提出 分析和解决实际问题 锻炼实践能力的重 要环节 是对学生实际工作能力的具体训练和考察过程 随着科学技术发展的日新日异 当今 计算机应用在生活中可以说得是无处不在 因此作为二十一世纪的大学来说掌握一些基本的 软件开发技术是十分重要

10、和必要的 回顾起此次课程设计 至今我仍感慨颇多 的确 自从拿到题目到完成整个编程 从理论到 实践 在整整一个星期的日子里 可以学到很多很多的的东西 同时不仅可以巩固了以前所 学过的知识 而且学到了很多在书本上所没有学到过的知识 通过这次课程设计使我懂得了 理论与实际相结合是很重要的 只有理论知识是远远不够的 只有把所学的理论知识与实践 相结合起来 从理论中得出结论 从而提高自己的实际动手能力和独立思考的能力 这样才 能真正为体会和认识它 才能写出一个完整的程序代码 才能使自己在过程中得到锻炼和提 高 在设计的过程中遇到问题 这毕竟独立做的 难免会遇到过各种各样的问题 同时在设 计的过程中发现了

11、自己的不足之处 对以前所学过的知识理解得不够深刻 掌握得不够牢固 比如说结构体的建立 指针的应用等都不太熟练 通过这次课程设计 也使我对以前所学过 的知识重新温故和加强 程序设计过程有如解决一实际问题 从解决实际问题的角度 我们可以这样来看 首先要了 解这个问题的基本要求 即输入 输出 完成从输入到输出的要求是什么 其次 从问题的 要害入手 从前到后的解决问题的每个方面 即从输入开始入手 着重考虑如何从输入导出 输出 在这个过程中 可确定所需的变量 数组 函数 然后确定处理过程 算法 最后 可得结论 通过这次课程设计 我深刻地体会到 细节决定成败 在学习的过程中 要注意每一个细节 要知道一个分

12、隔符或一个括号都 会使整个程序出现错误 要熟练掌握一些经典的结构和方法 如选择排序 递归 递推等 在遇到问题是可直接 应用 快速解决问题 要熟悉一些标准数据库 对一些可直接利用的函数就直接利用 没必要重新定义 在设计过程中最好使程序模块化 既便于阅读 也可增加其移植性 熟能生巧 平时应该多加训练 要知道 即使我们能完全看懂一个程序 但要让你自己 写出一个时仍是很困难的 它要求你对每一个语句 每一个变量 每一个函数 每一个模块 都充分的熟悉 要知道它们的作用 作用域等等 因此只有平时做的多了 到时候才会游刃 有余 一个多礼拜中 我有过山穷水尽的困惑 有过柳暗花明的惊喜 一个多礼拜的时间我经历了

13、很多 也收获了很多 与其说它是体力与脑力的作业 不如说它是合作精神和毅力的考验 经过这次课程设计 我不仅学到了很多知识和技能 更重要的是我学会了如何运用所学知识 去解决实际问题 附录 include include include define N 20 define T time 8 2 int sum 6 0 int computer 6 20 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

14、1 1 1 1 0 0 0 0 0 0 1 1 1 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 该数组表示假设某天某人查询时机房各个时间段机 位数情况 void Menu void Situation void Book void Cancel void SearchWaiting void detail int time void prione int i struct waitlist 等待列表 char number 3 char telephonenu

15、mber 11 wait N void printone int i int main Menu 当前状态函数 void Menu 主界面 int n w do puts t t 机房机位预约系统 n puts t t 菜单 n puts t t t 1 查询某时间段机位状态 查询某时间段机位状态 puts t t t 2 预定空机位 预定空机位 puts t t t 3 取消预订 取消预订 puts t t t 4 查询等待信息 查询等待信息 puts t t t 5 退出 退出 puts t t n printf 选择菜单号 1 5 scanf d if n5 w 1 getchar el

16、se w 0 while w 1 switch n case 1 Situation break case 2 Book break case 3 Cancel break case 4 SearchWaiting break case 5 exit 0 break getch 时间查询 void Situation int time printf 输在 8 20 范围内的时间 scanf d if time20 printf t时间输入错误 n printf 输入在 8 20 范围内的时间 scanf d detail time 函数调用 getchar Menu 预定函数 void Book int time i 0 x y FILE fp char c printf 在 8 20 时间范围内输入你想要预定的时间 scanf d if time20 printf t时间输入错误 n printf t在 8 20 时间范围内输入你想要预定的时间 scanf d detail time 函数调用 if sum T 0 if fp fopen a NULL printf n无法打开文件

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号