c语言旅馆信息管理系统,C语言旅馆信息管理系统

题目 旅店信息管理系统 小组成员 闫若琳 戴雨晨 马渊沐 张子飞 李闯 王浩 崔以博 孙浩浩 李春普 温健成 include include include include define MIN 1 define MAX 30 define LEN sizeof struct Hotel 用 LEN 代替结构体的 长度 void regeist void out information void search number void show all void search name void change void fire struct Hotel load FILE fp struct Hotel int room number char name 20 char sex 10 char ID 20 float paid 10 int inyear int inmonth int inday struct Hotel next struct Hotel load 定义 load 函数读取当前的信息 并存到内存链表中 struct Hotel head pb s pb struct Hotel malloc LEN 开辟新的节点 s struct Hotel malloc LEN if pb NULL s NULL printf 动态内存分配失败 n getch exit 0 if fp fopen resturant txt rb NULL printf 无法打开文件 n getch exit 0 head pb while fread s LEN 1 fp 读取当前的信息 并存到链表中 pb next s pb s s struct Hotel malloc LEN pb next NULL return head 返回链表的头指针 int main 崔以博 孙浩浩 char choice do printf n n 欢迎使用旅店信息管理系统 n n printf 1 查看旅店信息 n2 查看某一房间信息 n3 查看旅客信息 n printf 4 查找某一旅客信息 n5 旅客入住 n6 旅客换房 n7 旅客退房 n8 退出 n printf n n choice getch switch choice case 1 out information break case 2 search number break case 3 show all break case 4 search name break case 5 regeist break case 6 change break case 7 fire break case 8 exit 0 break default printf Error break printf n n 请按任意键继续 n getch system cls while 1 return 0 void out information 张子飞 定义 out information 函数 完成查看旅店 信息功能 FILE fp char ch if fp fopen information txt r NULL printf 无法打开文件 n getch exit 0 ch fgetc fp system cls printf n n t t t 旅店信息介绍 若没有信息请返回创建 printf n n n t while ch EOF putchar ch ch fgetc fp fclose fp void search number 李春普 温健成 定义 search number 函数 用来完成查看某 一房间的信息 char ch 2 int room number struct Hotel head pa head load printf n 请输入需要查看的房间序号 d d MIN MAX scanf d pa head next if room numberMAX printf a nError return do if pa if room number pa room number 如果找到相应信息 则输出 printf n printf roomnumber t d pa room number printf n printf name t t s pa name printf n printf sex t t s pa sex printf n printf ID t t s pa ID printf n printf paid t t s pa paid printf n printf d d d pa inyear pa inmonth pa inday printf n printf n 请选择是否继续查看信息 y n n scanf s ch if strcmp ch Y 0 else printf n 请输入需要查看的房间序号 d d MIN MAX scanf d pa head next if room numberMAX printf 无此房间 return continue pa pa next else printf n 该房间还没有旅客入住 return while 1 void show all 戴雨晨 定义是 show all 函数 用来显示所有 旅客信息 struct Hotel head pa head load pa head next printf n 所有入住旅客的信息如下 n while pa 显示所有的旅客信息 printf n printf roomnumber t d pa room number printf n printf name t t s pa name printf n printf sex t t s pa sex printf n printf ID t t s pa ID printf n printf paid t t s pa paid printf n printf date t t d d d pa inyear pa inmonth pa inday printf n pa pa next void search name 马渊沐 定义 search name 函数 用来完成查看某一旅客 的信息 char ch 2 char inname 20 用数组 inname 20 来储存需要查询的旅客 name struct Hotel head pa head load printf n 请输入需要查看的旅客姓名 scanf s inname pa head next do if pa if strcmp inname pa name 0 printf n printf roomnumber t d pa room number printf n printf name t t s pa name printf n printf sex t t s pa sex printf n printf ID t t s pa ID printf n printf paid t t s pa paid printf n printf date t t d d d pa inyear pa inmonth pa inday printf n printf n 请选择是否继续查看信息 y n n scanf s ch if strcmp ch Y 0 else printf n 请输入需要查看的旅客姓名 scanf s inname pa head next continue pa pa next else printf n 没有查到该旅客的信息 return while 1 void regeist 闫若琳 定义 regeist 函数实现入住功能 char ch 2 int number struct Hotel head p1 p2 pa head load pa head next printf n 已入住房间 n while pa printf n printf roomnumber t d pa room number pa pa next fclose fp if fp fopen resturant txt a NULL printf 无法打开文件 n getch exit 0 head NULL p1 struct Hotel malloc LEN p2 struct Hotel malloc LEN if p1 NULL p2 NULL printf 动态内存分配失败 n getch exit 0 printf n 请登记入住信息 n printf 请选择房间号 d d MIN MAX scanf d if numberMAX printf 无此房间 return p1 room number number 在该房间没有旅客时 登记入住 printf name t scanf s printf sex t scanf s printf ID t scanf s printf paid t scanf s printf date 年月日空格隔开 scanf d d d p1 next NULL if head NULL 将输入的信息保存到链表 head p1 p2 p1 else p2 next p1 p2 p1 fwrite p2 LEN 1 fp fclose fp 将链表信息保存到磁盘文件 printf n 请选择是否继续登记信息 y n 判断是否继续登记旅客信息 scanf s ch if strcmp ch y 0 printf n 登记旅客入住信息成功 return 0 else regeist return 登记完成后返回头链表指针 void change 李创 定义 change 函数实现换房功能 int room number int newroom number struct Hotel head pa L head load printf n 请输入需要换房的房间序号 d d MIN MAX scanf d if room numberMAX printf 无此房间 getch return pa head next do if pa if room number pa room number printf n printf roomnumber t d pa room number printf n printf name t t s pa name printf n printf sex t t s pa sex printf n printf ID t t s pa ID printf n printf paid t t s pa paid printf n printf date t t d d d pa inyear pa inmonth pa inday printf n printf n 请输入需要换到的房间序号 d d MIN MAX scanf d if newroom numberMAX printf 无此房间 getch return pa room number newroom number break pa pa next else printf n 该房间还没有旅客入住 n getch return while 1 fclose fp if fp fopen resturant txt wb NULL printf 无法打开文件 n getch exit 0 L head next while L fwrite L LEN 1 fp L L next fclose fp printf n 换房成功 return void fire 王浩 定义 fire 函数实现退房功能 char inname 20 用数组 inname 20 来储存需要退房旅客 name struct Hotel head qian pa L head load qian struct Hotel malloc LEN 开辟新的节点 if qian NULL printf 动态内存分配失败 n 如果动态内存分配失败 返回失败信息 getch exit 0 printf n 请输入需要退房的旅客姓名 scanf s inname pa head next do if pa if strcmp inname pa name 0 printf n printf roomnumber t d pa room number printf n printf name t t s pa name printf n printf sex t t s pa sex printf n printf ID t t s pa ID printf n printf paid t t s pa paid printf n printf date t t d d d pa inyear pa inmonth pa inday printf n qian head while qian next pa 找到需要查找节点的前一个节点 qian qian next if pa next NULL qian next NULL else qian next pa next break pa pa next else printf n 没有查找到该旅客的信息 n getch exit 0 while 1 L head next if fp fopen resturant txt wb NULL printf 无法打开文件 n getch exit 0 while L fwrite L LEN 1 fp L L next fclose fp printf n 退房成功

展开阅读全文

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值