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

内容发布更新时间 : 2024/10/2 10:44:11星期一 下面是文章的全部内容请认真阅读。

1 设计目的

机房机位预定系统

2 任务概述

20台机器,编号1到20,从早八点到晚八点。两小时一个时间段,每次可预定一个时间段。功能要求:

(1)系统以菜单方式工作

(2)查询,根据输入时间,输出机位信息。

(3)机位预定,根据输入的时间查询是否有空机位,若有则预约,若无则提供最近的时间段,另:若用户在非空时间上机,则将用户信息列入等待列表。 (4)退出预定,根据输入的时间,机器号撤销该事件的预定!

(5)查询是否有等待信息,若有则提供最优解决方案(等待时间尽量短),若无则显示提示信息。

.........

3 模块划分

机房机位预约系统 查询机位 预定机位 退出预定 查询等待信息

4 主要函数说明及其N-S图

1. 主函数:

int main() { Menu(); /*当前状态函数*/ }

void Menu() /*主界面*/ { int n,w; do { puts(\机房机位预约系统*******************\\n\ puts(\菜单***************************\\n\

C语言课程设计

puts(\查询某时间段机位状态\ /*查询某时间段机位状态*/ puts(\预定空机位\ /*预定空机位*/ puts(\取消预订\ /*取消预订*/ puts(\查询等待信息\ /*查询等待信息*/ puts(\退出\ /*退出*/ puts(\ printf(\选择菜单号(1-5):\ scanf(\ if(n<1||n>5) {w=1;getchar();} else 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(); }

2.机位查询:

void Situation() { int time; printf(\输在 (8-20)范围内的时间:\ scanf(\ if(time<8||time>20)

第2页共17页

C语言课程设计

{printf(\时间输入错误!\\n\ printf(\输入在 (8-20)范围内的时间:\ scanf(\ } detail(time); /*函数调用*/ getchar(); Menu();}

3.机位预定:

void Book() {int time,i=0,x,y;

FILE *fp; char c;

printf(\在(8-20)时间范围内输入你想要预定的时间:\ scanf(\ if(time<8||time>20) { printf(\时间输入错误!\\n\ printf(\在(8-20)时间范围内输入你想要预定的时间:\ scanf(\ }

detail(time); /*函数调用*/ if(sum[T]>0)

{ if((fp=fopen(\ { printf(\无法打开文件!\\n\ exit(0); } printf(\请输入你想要预定的机号,并且留下你的电话号码!:\\n\

第3页共17页