题目:《酒店信息管理系统设计》
说明:酒店房间信息包括:房间号, 房间简介, 房间可住人数, 房间价格, 房间是否空闲。
试设计一个酒店信息管理系统,使之能提供以下功能:
系统以菜单方式工作。
房间信息录入功能——输入。
房间信息浏览功能——输出。
房间信息查询功能——算法。
按房间号查询。
按房间可住人数查询。
按房间价格查询。
房间信息的删除与修改。
4.1结构体类型
struct staff{
int id; // 房间号
int num; // 房间可住人数
int empty; // 房间是否空闲 0 空闲
float price; // 房间价格
char mes[99]; // 房间简介
}stf[99];
4.2系统功能菜单模块
(1)功能简介:打印出系统功能菜单,便于选择操作。
(2)界面截图:
增加房间信息模块
(1)功能简介:从文件更新房间信息的同时可以添加一条新的房间信息。
(2)界面截图:
(3)界面关键代码和描述:
void in()
{
FILE *fp; // 从文件读取信息
int n=0;
if((fp=fopen("a.txt","a+"))==NULL){
puts("error");
return;
}
while(!feof(fp)){
if((fread(&stf[n],LEN,1,fp)))
n++;
}
puts("房间号:");
scanf("%d",&stf[n].id);
for(int i=0;i<n;i++){
if(stf[n].num==stf[i].num){
puts("该房间已存在");
fclose(fp);
return;
}
}
puts("房间可住人数: ");
scanf("%d",&stf[n].num);
// ………..此处省略录入信息代码
fwrite(&stf[n],LEN,1,fp);
fclose(fp);
}
显示房间信息模块
(1)功能简介:可以显示当前系统中已录入的所有房间信息, 若无信息则显示无信息。
(2)界面截图:
3)界面关键代码和描述:
void browse()
{
FILE *fp;
int n=0;
if((fp=fopen("a.txt","r"))==NULL){
puts("error");
return;
}
while(!feof(fp)){
if((fread(&stf[n],LEN,1,fp)))
n++;
}
puts("房间号 房间可住人数 房间是否空闲 房间价格 房间简介");
if(n==0)
{
puts("无信息");
system("pause");
return;
}
for (int i=0;i<n;i++){
printf("%-10d %-13d %-8d %-8.2f %s \n",STF);
}
system("pause");
}