ImageVerifierCode 换一换
格式:DOCX , 页数:46 ,大小:105.34KB ,
资源ID:11905422      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11905422.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言课程设计宾馆住宿系统.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C语言课程设计宾馆住宿系统.docx

1、C语言课程设计宾馆住宿系统华中科技大学计算机科学与技术学院C语言程序设计课程设计实验报告题目: 宾馆住宿信息管理系统 专业: 班级: 学号: 姓名: 成绩: 指导教师: 完成日期: 20年 10 月 1 日宾馆管理住宿系统一实验目的:1、进一步掌握和利用C语言进行程设计的能力; 2、 进一步理解和运用结构化程设计的思想和方法; 3、 初步掌握开发一个小型实用系统的基本方法; 4、 学会调试一个较长程序的基本方法; 5、 学会利用流程图或N-S图表示算法; 6、 掌握书写程设计开发文档的能力(书写课程设计报告);二实验要求:1、只能使用C语言,源程序要有适当的注释,使程序容易阅读。2、要有用户界

2、面。要求至少采用简易菜单;鼓励采用文本菜单界面甚至采用图形菜单界面。3、必须使用结构和十字交叉链表等数据结构。4、使用文件保存数据。5、至少输出一份报表(屏幕输出即可),鼓励自行增加新功能。功能要求(宾馆住宿信息管理系统): 对宾馆所有客房的住宿信息进行管理,主要包括客房基本信息、客户住宿信息。包含功能:客房基本信息录入。允许对已经录入的数据重新进行编辑、修改,各种基本数据的插入、删除,基于各种数据的查询、统计计算。宾馆住宿信息其它方面的统计(自行确定)。三实验内容:程序概况本程序采用文本菜单界面,程序数据结构采用三个方向的十字链表来处理的。具有对客房基本信息,客户信息的新建、修改、插入、删除

3、、查找、查看、统计、保存、载入等功能。程序虽简单,但具有完整的功能。程序模块示意图1)主程序流程图2)主要数据结构图程序数据结构采用三个方向的十字链表来处理的。程序详细介绍主要数据结构:typedef struct kehuxinxi char name20;/*客户姓名*/ char id20;/*客户ID*/ char sex; /*性别*/ char telephone20;/*电话*/ char room10;/*房间号*/ char time12;/*入住时间*/ float yingshou;/*应付费用*/ float shishou;/*实际费用*/ char shouyiny

4、uan20;/*收银员*/ struct kehuxinxi * next; kehu,* Pkehu;客户信息包含客户姓名,ID,性别,房间号,入住时间,应付费用,实际费用,收银员的资料。typedef struct kefangxinxi char num10;/*房间号*/ char zhonglei;/*类别*/ int times;/*入住次数*/ float jiage;/*价格*/ struct kefangxinxi * next; Pkehu Record; fangjian,* Pfangjian; 客房信息里包含房间号,房间类别,入住次数,房间价格资料。 typedef

5、struct kefangzhonglei char zhonglei;/*类别*/ int shuliang;/*房间数*/ Pfangjian first; struct kefangzhonglei * next; fangjianzhonglei ,* Pfangjianzhonglei;房间种类包含房间类别和房间数目资料。各函数功能介绍(为方便阅读理解程序,函数名用汉语拼音代替)int xiangdaohejiemian(int function,Pfangjianzhonglei * pRST);绘制功能选择界面int Collect(int (* Comp)(void *,voi

6、d *),int num);按照Comp规则收集前num个信息int jiyushijian(void *,void *);按照次数规则int jiyujiage(void *,void *);按照价格规则int huodecaidan(char * * szTitles,int num);获取菜单int huodekefangzhonglei(FILE * pf,Pfangjianzhonglei sub_tree);获取一整个类型,客房种类int huodekefang(FILE * pf,Pfangjian room);获取一个房间信息int huodekehu(FILE * pf,Pk

7、ehu custom);获取一个客户信息int xierukefangxinxi(FILE * pf,Pfangjian room);写入客房信息int xierukehuxinxi(FILE * pf,Pkehu custom);写入客户信息int huodenkefang(Pfangjianzhonglei sub_tree,int num_room);获取num_room个房间int xiugaikehuxinxi(Pkehu pCu);修改客户信息int xiugaikefangxinxi(Pfangjian pRF);修改房间信息int Collect(int (* Comp)(vo

8、id *,void *),int num);按照Comp规则收集前num个信息int jiyushijian(void *,void *);按照次数规则int jiyujiage(void *,void *);按照价格规则int Display(void);int Get_Info(char * * szTitles,char * * buffer,int num);int zhanxiankehu(Pkehu pCu);int zhanxiankefang(Pfangjian pRF);显示客房客户信息int huodekehuxinxi(Pkehu pCu);获取客户信息int sousu

9、okefangzhonglei(Pfangjianzhonglei pRST);搜索一个类型客房种类int sousuokefangxinxi(Pfangjianzhonglei pRST);搜索一个客房int sousuokehu(Pfangjianzhonglei pRST);搜索一个客户int tianjiazhonglei(Pfangjianzhonglei pRST);插入客房种类int tianjiakefang(Pfangjianzhonglei pRST);插入一个客房int tianjiakehu(Pfangjianzhonglei pRST);插入一个客户int shanc

10、huzhonglei(Pfangjianzhonglei * pRST);删除客房种类int shanchukefang(Pfangjianzhonglei * pRST);删除客房信息int shanchukehu(Pfangjianzhonglei * pRST);删除客户信息int xiugaikefangzhonglei(Pfangjianzhonglei pRST);/修改客房种类int xiugaikehu(Pfangjianzhonglei pRST);修改客户信息int huodekefangxinxi(Pfangjian pRF);获得客房信息/*Qsort*/void Qs

11、ort(void * * array,int low,int high,int (*Comp)(void * ,void * );快速排序法排序四运行结果1开始功能选择菜单2新建功能界面3插入功能界面4修改功能界面5删除功能界面6查找功能界面7查看功能界面详细设计:(源程序清单见附录):五心得体会 通过这次实训,增加了我学习软件技术的兴趣,虽然在编写修改代码的工程中花费了不少时间甚至有放弃的想法,但最终看到程序运行,那种喜悦兴奋之情无法用文字描述。1.编写课程设计是理论结合实际的一次很好结合,虽然写得作业仅仅只能当做一项作业没有实际使用的价值,但还是从中学到了不少,真正地体会到完成一项任务的艰

12、辛和付出之后收获的快乐。2.编写程序时应该使程序易于理解尽量使用通用的变量名和通俗的注释。3.虽然很多东西刚开始时都不懂,但只要坚持下去学,慢慢地就会熟悉。4.程序应该分几个文件装,要有条理性。5.写程序运行时会出现很多bug,要耐心调试,编程需要耐心和细心。把程序完整地调试好后,对自己性格的培养也是一种提高。6.当自己解决不了时要向他人请教,虚心学习他人的方法。这次完成作业向同学们请教了很多问题,得到了同学的帮助,在此真心地表示感谢。参考文献Turbo C 使用大全第一册、第二册 徐金梧等编译 北京科海培训中心C语言课程设计 曹计昌 卢萍 李开 编著C程序设计谭浩强 著附录源程序清单#ifn

13、def DEF#define DEF#define BUFSIZE 20#define MAX_ROOM 100#define TEXT_CY 20#include#include#include#include#include#include#include#define TRUE 1#define FALSE 0#define NAME 20#define MAX_ID 20#define NUM 10#define TELE 20#define TIME 12typedef struct kehuxinxi char name20;/*客户姓名*/ char id20;/*客户ID*/

14、char sex; /*性别*/ char telephone20;/*电话*/ char room10;/*房间号*/ char time12;/*入住时间*/ float yingshou;/*应付费用*/ float shishou;/*实际费用*/ char shouyinyuan20;/*收银员*/ struct kehuxinxi * next; kehu,* Pkehu;typedef struct kefangxinxi char num10;/*房间号*/ char zhonglei;/*类别*/ int times;/*入住次数*/ float jiage;/*价格*/ s

15、truct kefangxinxi * next; Pkehu Record; fangjian,* Pfangjian; typedef struct kefangzhonglei char zhonglei;/*类别*/ int shuliang;/*房间数*/ Pfangjian first; struct kefangzhonglei * next; fangjianzhonglei ,* Pfangjianzhonglei;typedef struct fangjian * Buffer; int Bufsize;/*缓冲区大小*/ Buf; typedef struct int l

16、eft; int top; int right; int bottom; Rect;/*矩形区域,一个好东西*/*Guide*/int xiangdaohejiemian(int function,Pfangjianzhonglei * pRST);/*tools*/int Collect(int (* Comp)(void *,void *),int num);/*按照Comp规则收集前num个信息*/int jiyushijian(void *,void *);/*按照次数规则*/int jiyujiage(void *,void *);/*按照价格规则*/int huodecaidan(

17、char * * szTitles,int num);/*fun_fun*/int huodekefangzhonglei(FILE * pf,Pfangjianzhonglei sub_tree);/*获取一整个类型*/int huodekefang(FILE * pf,Pfangjian room);/*获取一个房间*/int huodekehu(FILE * pf,Pkehu custom);/*获取一个客户*/int xierukefang(FILE * pf,Pfangjianzhonglei sub_tree);int xierukefangxinxi(FILE * pf,Pfan

18、gjian room);int xierukehuxinxi(FILE * pf,Pkehu custom);int huodenkefang(Pfangjianzhonglei sub_tree,int num_room);/*获取num_room个房间*/int xiugaikehuxinxi(Pkehu pCu);/*修改客户信息*/int xiugaikefangxinxi(Pfangjian pRF);/*修改房间信息*/int Collect(int (* Comp)(void *,void *),int num);/*按照Comp规则收集前num个信息*/int jiyushij

19、ian(void *,void *);/*按照次数规则*/int jiyujiage(void *,void *);/*按照价格规则*/int Display(void);int Get_Info(char * * szTitles,char * * buffer,int num);int zhanxiankehu(Pkehu pCu);int zhanxiankefang(Pfangjian pRF);int huodekehuxinxi(Pkehu pCu);int sousuokefangzhonglei(Pfangjianzhonglei pRST);/*搜索一个类型*/int sou

20、suokefangxinxi(Pfangjianzhonglei pRST);/*搜一个房间*/int sousuokehu(Pfangjianzhonglei pRST);/*搜一个客户*/int tianjiazhonglei(Pfangjianzhonglei pRST);/*插入*/int tianjiakefang(Pfangjianzhonglei pRST);int tianjiakehu(Pfangjianzhonglei pRST);int shanchuzhonglei(Pfangjianzhonglei * pRST);/*删除*/int shanchukefang(Pf

21、angjianzhonglei * pRST);int shanchukehu(Pfangjianzhonglei * pRST);int xiugaikefangzhonglei(Pfangjianzhonglei pRST);/*修改*/int xiugaikehu(Pfangjianzhonglei pRST);int huodekefangxinxi(Pfangjian pRF);int Buf_Clear(void);int Buf_Fill_Tree(Pfangjianzhonglei pRST_temp);/*Qsort*/void Qsort(void * * array,in

22、t low,int high,int (*Comp)(void * ,void * );/*快速排序法排序,基于比较*/Buf Buf_Room;/*调试信息*/#define DEBUG #define DEBUG2 #define DEBUG3(x) DEBUG#endifint Buf_Clear(void) Buf_Room.Bufsize=0; return 0;int Buf_Fill_Tree(Pfangjianzhonglei pHead) Pfangjian pRoom; for(pRoom=pHead-first;pRoom;pRoom=pRoom-next) Buf_Ro

23、om.BufferBuf_Room.Bufsize+=pRoom; return 0;int huodekefangzhonglei(FILE * pf,Pfangjianzhonglei sub_tree) if(!feof(pf) fread(sub_tree,sizeof(fangjianzhonglei),1,pf); if(!feof(pf) return 1; else return 0;int huodekefang(FILE * pf,Pfangjian room) if(!feof(pf) fread(room,sizeof(fangjian),1,pf); if(!feof

24、(pf) return 1; else return 0;int huodekehu(FILE * pf,Pkehu custom) if(!feof(pf) fread(custom,sizeof(custom),1,pf); if(!feof(pf) return 1; else return 0;int xierukefang(FILE * pf,Pfangjianzhonglei sub_tree) return fwrite(sub_tree,sizeof(fangjianzhonglei),1,pf);int xierukefangxinxi(FILE * pf,Pfangjian

25、 room) return fwrite(room,sizeof(fangjian),1,pf);int xierukehuxinxi(FILE * pf,Pkehu custom) return fwrite(custom,sizeof(kehu),1,pf);int tianjiazhonglei(Pfangjianzhonglei pRST) char * szTitles=How many Rooms?; int i,num; Pfangjianzhonglei pRST2; for(i=0;pRST;pRST=pRST-next,i+) pRST2=pRST; pRST2-next=

26、(Pfangjianzhonglei)malloc(sizeof(fangjianzhonglei); pRST=pRST2-next; printf(%s,szTitles); scanf(%d,&num); huodenkefang(pRST,num); pRST-zhonglei=i+0; pRST-next=NULL; return 0;#define IR_X 100#define IR_Y 100#define IR_CX 100#define IR_C 20int tianjiakefang(Pfangjianzhonglei pRST) const char * szRoom=

27、What is the type?; char BufBUFSIZE; int num,i; Pfangjianzhonglei pRST2; Pfangjian pRF; Buf0=0; printf(%s,szRoom); scanf(%d,&num); for(i=1,pRST2=pRST;inext,i+) ; if(!pRST2) return 0; pRF=pRST2-first; pRST2-shuliang+; while(pRF-next) pRF=pRF-next; pRF-next=(Pfangjian)malloc(sizeof(fangjian); pRF=pRF-n

28、ext; huodekefangxinxi(pRF); pRF-next=NULL; return 0;#define IC_Y 160#define IC_Y2 220 int tianjiakehu(Pfangjianzhonglei pRST) const char * szTree=What is the type?; const char * szRoom=Which room; const char * szName=The name; char RoomBUFSIZE; int type,i; Pfangjianzhonglei pRST2; Pfangjian pRF; Pke

29、hu pCu; printf(%s,szTree); scanf(%d,&type); printf(%s,szRoom); scanf(%s,Room); for(i=1,pRST2=pRST;pRST2-zhonglei!=type+0;pRST2=pRST2-next,i+) ; if(!pRST2) return 0; pRF=pRST2-first; while(!strcmp(pRF-num,Room)&pRF) pRF=pRF-next; if(!pRF) return 0; pCu=pRF-Record; while(pCu-next) pCu=pCu-next; pCu-next=(Pkehu)malloc(sizeof(kehu); pCu=pCu-next; pCu-next=NULL; pRF-times+; huodekehuxinxi(pCu); return 0;int sousuokefangzhonglei(Pfangjianzhonglei pRST) c

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1