酒店管理系统c语言课程设计_第1页
酒店管理系统c语言课程设计_第2页
酒店管理系统c语言课程设计_第3页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、#include <stdio.h>#include <conio.h>#include<string.h>#include<stdlib.h>/* 定义客户结构体 */struct guest char no20;char Name20;char sex2;char id20;/* 声明客户数组及客户数量 */struct guest guests200;int num=0;/* 通过客户返回数组下标 */int guest_SearchByIndex(char no) int i;for (i=0;i<num;i )if (strcmp

2、(guestsi.no,no)=0)return 0;/i;return -1;/* 通过姓名返回数组下标 */int guest_SearchByName(char name) int i;for (i=0;i<num;i )if (strcmp(guestsi.Name,name)=0) return i;else return -1;return 0;/* 显示单条客户记录 */void guest_DisplaySingle(int index) printf("ssssn"," 房间编号 "," 姓名","

3、性别"," 身份号码 "); printf("n");printf(" %-10s%9s%9ssn",guestsindex.no,guestsindex.Name,guestsindex.sex,gues tsindex.id);/* 插入客户信息 */void guest_Insert()while(1)printf(" 请输入房间编号 :");scanf("%s",guestsnum.no);getchar();printf(" 请输入姓名 :");scanf

4、("%s",guestsnum.Name);getchar();printf(" 请输入性别 :");scanf("%s",guestsnum.sex);getchar();printf(" 请输入身份号码 :");scanf("%s",guestsnum.id); while(strlen(guestsnum.id)!=18)printf(" 请输入 18 位身份证号码 "); scanf("%s",guestsnum.id);getchar();num

5、 ;printf(" 是否继续 ?(y/n)");if (getchar()='n'|getchar()='N')break;/* 修改客户信息 */void guest_Modify()while(1)char no20;int index;printf(" 请输入要修改的客户的房号 :"); scanf("%s",no);getchar(); index=guest_SearchByIndex(no);if (index=-1)printf(" 该客户不存在 !n");elsep

6、rintf(" 你要修改的客户信息为 :n"); guest_DisplaySingle(index);printf("-请输入新值 -n");printf(" 请输入房间编号 :"); scanf("%s",guestsindex.no);getchar();printf(" 请输入姓名 :"); scanf("%s",guestsindex.Name); getchar();printf(" 请输入性别 :"); scanf("%s"

7、;,guestsindex.sex); getchar();printf(" 请输入您的身份证号码 "); scanf("%s",guestsindex.id); while(strlen(guestsindex.id)!=18)printf(" 请输入 18 位身份证号码 n"); scanf("%s",guestsindex.id); getchar();printf(" 是否继续 ?(y/n)");if (getchar()='y'|getchar()!='Y

8、9;)break;/* 删除客户信息 */ void guest_Delete()int i; while(1)char no20;int index;printf(" 请输入要删除的客户房间编号 :"); scanf("%s",no);getchar(); index=guest_SearchByIndex(no);if (index=-1)printf(" 该房间没人住 !n");elseprintf("你要删除的客户信息为 :n");guest_DisplaySingle(index);printf(&quo

9、t;是否真的要删除 ?(y/n)");if (getchar()='y')for (i=index;i<num-1;i ) guestsi=guestsi 1; num-; getchar();printf(" 是否继续 ?(y/n)");if (getchar()='y'|getchar()!='Y') break;/* 按姓名查询 */ void guest_Select() while(1)char name20;int index;printf(" 请输入要查询的客户的姓名 :");

10、 scanf("%s",name);getchar();index=guest_SearchByName(name);if (index=-1)printf(" 该客户不存在 !n");elseprintf(" 你要查询的客户信息为 :n"); guest_DisplaySingle(index);printf(" 是否继续 ?(y/n)");if (getchar()='y'|getchar()!='Y')break;/* 按房间号码查询 */void guest_room()wh

11、ile(1)char no20;char index;printf(" 请输入要查询的房间号码 :"); scanf("%s",no);getchar();index=guest_SearchByIndex(no);if (index=-1)printf(" 该房间为空 !n");else printf(" 你要查询的客户信息为 :n"); guest_DisplaySingle(index);printf(" 是否继续 ?(y/n)");if (getchar()='y'|ge

12、tchar()!='Y')break;/* 显示客户信息 */void guest_Display() int i; printf("ssssn"," 房间编号 "," 姓名"," 性别"," 身份号码 "); printf("n");for (i=0;i<num;i ) printf(" %- 10s%9s%9ssn",guestsi.no,guestsi.Name,guestsi.sex,guestsi.id); getchar(

13、);/* 将客户信息从文件读出 */void IO_ReadInfo()FILE *fp;int i;if (fp=fopen("Database.txt","rb")=NULL)return;判断文件读入是否if (fread(&num,sizeof(int),1,fp)!=1) /* 出错*/num=-1;elsefor(i=0;i<num;i )fread(&guestsi,sizeof(struct guest),1,fp);fclose(fp);/* 将客户信息写入文件 */void IO_WriteInfo()FILE

14、*fp;int i;if (fp=fopen("Database.txt","wb")=NULL)printf(" 不能翻开文件 !n");return;if (fwrite(&num,sizeof(int),1,fp)!=1)printf(" 写入文件错误 !n");for (i=0;i<num;i )if (fwrite(&guestsi,sizeof(struct guest),1,fp)!=1)printf(" 写入文件错误 !n");fclose(fp);/* 主

15、程序 */ void main() int m,b,x,h;IO_ReadInfo();酒店客户入住登记管理while(1)*n");printf(" & 1.增加客户记录 & n");printf(" & 2.修改客户记录 & n");printf(" & 3.删除客户 & n");printf(" & 4.按姓名查询客户记录 & n");printf(" & 5.按房间号码查询客户记录 & n");pr

16、intf(" & 6.输出所有客户 & n");printf(" & 7.退出 & n");printf("/* 主菜单 */printf("n*n");scanf("%d",&m);getchar(); switch(m)case 1: printf(" 请您选择预定种类 :n");printf("1.单人间/夜150元n2.双人间/夜200元n3.标准间/夜300元n4.总统套房/夜600元n");scanf("

17、%d",&b); getchar();switch(b) case 1:printf(" 请输入预定天数 n"); scanf("%d",&x);printf("请预交款为 %c元n",x*150);printf("1.确定 2. 返回");scanf("%c",&h);printf("您已预定成功 !n");break;case 2:printf("请输入预定天数 n");scanf("%d",&am

18、p;x); printf(" printf("1.scanf("%d",&h); printf(" case 3:printf("scanf("%d",&x); printf(" printf("1.scanf("%d",&h); printf(" case 4:printf("scanf("%d",&x); printf(" printf("1.scanf("%d",&h); printf(" default:printf("guest_Insert();break;case 2: guest_Modify(); break;请预交款为(元n",x*200);确定 2. 返回 ");您已预定成功 !n");break;请输入预定天数 n");请预交款为(元n",x*300);确定 2. 返回 ");您已预定成功 !n");break;请输入预定天数 n");请预交款为(元n",x*600);确定

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论