c语言程序设计-机房机位预约模拟

c语言程序设计-机房机位预约模拟

ID:14058734

大小:740.72 KB

页数:17页

时间:2018-07-25

c语言程序设计-机房机位预约模拟_第1页
c语言程序设计-机房机位预约模拟_第2页
c语言程序设计-机房机位预约模拟_第3页
c语言程序设计-机房机位预约模拟_第4页
c语言程序设计-机房机位预约模拟_第5页
资源描述:

《c语言程序设计-机房机位预约模拟》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、C语言课程设计院系:工程学院姓名:??恺学号:2009100????班号:05209???指导教师:梁老师日期:2011年8月16机房机位预约模拟一.题目要求20台机器,从早八点到晚八点,每两个小时一个时间段.需要实现的功能:(1)查询,根据输入的时间,输出机位信息.(2)机位预定,根据输入的日期和时间段查询是否有空机位,若有则预约,若无则提供最近空机时间段.另:若用户要求在非空时间上机,则将用户信息插入该时间段的等待列表.(3)退出预定,根据输入的时间,撤消该时间的饿预定.(4)查询是否有等待信息,若有则按顺序显示联系方式,若无则显

2、示提示信息.二.需求分析根据题目要求,需要提供机位信息和预约信息,应该用链表来存储,应提供指针的操作:在程序中,需要查询是否有空机位和等待者和处理预约和取消预约问题,应提供查询,显示,预定,删除,修改等操作;另外还要提供键盘式选择菜单实现功能选择.三.总体设计现在分析整个一下整个系统,根据上面的需求分析,可以将这个系统的设计分为如下六大模块:查询我的预约状态,查询空位,预约,取消预约,排队,查询等待信息.机房机位模拟系统我的预约状态查询空位预约取消预约排队查询等带信息16四.详细设计及实现1.宏定义#include#

3、include#include#defineLENGTH6/*总时段数*/#defineMAX2#defineS(r)(r-8)/2/*计算在哪个时段数*/structnode{intlocat;chardata[10];/*学号,假设为联系方式*/structnode*next;};structnode*head;structcell{intCNum;/*连接在该时段头结点的总机器数目*/structnode*first;/*指向整个队列的开头*/structnode*middle;/*指向等

4、待预约队列*/structnode*last;/*指向整个队列的结尾*/}TimeQueue[LENGTH];2..主函数输入n,判断n是否是0-6显示一系列功能信息主函数一般设计的比较简洁,只提供输入,处理和输出部分的函数调用.其中个功能模块用菜单方式选择。NY根据n的值调用各功能模块函数16【程序】main()/***************主函数**************/{inti;for(i=0;i

5、;TimeQueue[i].middle=NULL;TimeQueue[i].last=NULL;}while(1){printf("Pleasechoiceyournumber!:");printf("1.Searchmybookingstate2.Searchemptyplace3.Book4.Cancelbooking5.Waiting6.Searchwaiting");scanf("%d",&i);/*选择功能*/switch(i){case1:Inquir();break;/*查询我的状态模块*/case2:inqu

6、ir();break;/*查询空位模块*/case3:booking();break;/*预约模块*/case4:cancel();break;/*取消预约模块*/case5:waiting();break;/*排队模块*/case6:inquir_waiting();break;/*查询等待信息模块*/default:printf("error");}}}3.各功能模块设计(1)查询我的状态模块[数据结构]我的原始数据是预约者预约的信息,将它储存在用指针处理的链表中。【分析】根据输入的时间来判断应该查询的结构体,把其首地址赋给R

7、em,然后通过指针的移动,比较输入的学号和存储在该结构体中的Rem->data,来判断我的预约状态。16[流程图]输入要查询的时间n,判断n是否8-20YNn=s(n)根据的n值和输入的学号来查找链表中是否有该值和其的位置,从而达到查询出我的状态的目的提示:输入错误,请重新输入【程序】voidInquir(){intn;inti;charInfor[10];structnode*q;structnode*Rem;printf("Pleaseinputthetimeyouwanttosearch!(24xiaoshizhibetween

8、8and20o’clock,include8o’clock)");scanf("%d",&n);if(n>=8&&n<20){n=S(n);printf("Pleaseinputyourschool-number!

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。