用C语言实现的宾馆客房管理系统课程设计报告..doc

上传人:scccc 文档编号:14028868 上传时间:2022-01-30 格式:DOC 页数:16 大小:262.50KB
返回 下载 相关 举报
用C语言实现的宾馆客房管理系统课程设计报告..doc_第1页
第1页 / 共16页
用C语言实现的宾馆客房管理系统课程设计报告..doc_第2页
第2页 / 共16页
用C语言实现的宾馆客房管理系统课程设计报告..doc_第3页
第3页 / 共16页
亲,该文档总共16页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《用C语言实现的宾馆客房管理系统课程设计报告..doc》由会员分享,可在线阅读,更多相关《用C语言实现的宾馆客房管理系统课程设计报告..doc(16页珍藏版)》请在三一文库上搜索。

1、目录、课程设计题目 2二、运行环境(软、硬件环境) 2三、算法设计的思想 2四、算法的流程图 2五、算法设计分析 3六、源代码 3七、运行结果分析 9八、收获及体会 12一、课程设计题目宾馆客房管理系统。二、运行环境(软、硬件环境)中文版 Windows XP 和 Microsoft Visual C+ 6.0。三、算法设计的思想1定义宾馆客房管理信息结构体 Hotel-Info 。2. 建立一个简易的选择菜单,通过输入选择执行的动作。3. 主函数中,用switch case 实现选择功能,7项功能通过7个分 支实现,每个对应一个函数。4. 写函数,包括In sert-插入,Ame nd修改,

2、Dema nd查询,Del-删 除,Skim-浏览,Bala nee-结算。5. 源程序可运行之后,将其数据、信息输入到文档中,使其能存档, 可以写入文件和读出文件。6. 对程序进行修改、完善。写主函数,实现选择功能图1算法流程图五、算法设计分析1. 这是一个小型的管理系统,使用结构体数组存储客房的信息。 2一般的管理系统都应该具备插入,修改,查询,删除,浏览等功 能,通过使用一个简易菜单进行执行动作的选择。3. 用函数实现模块化设计,调理清晰,使程序易读写。4. 把程序与文件联系,使数据能存储在磁盘中,更具实用性。六、源代码1 结构体struct Hotel_Infochar nameN,t

3、ypeN,ID_cardN,in_timeN,leave_timeN;char idlyN;int prize,num,ad_payment;InfoN;2 主函数int main()FILE *fp;int i=0;fp=fopen(d:hotel manage system.txt,r);/fscanf(fp,%d,&n);/ for(i=0;in;i+)while(!feof(fp)int a;fscanf(fp,%d,&a);fscanf(fp,客房号:%d,&Infoi.num);fscanf(fp,空闲情况:%s,Infoi.type);fscanf(fp,客房类型:%s,Info

4、i.idly);fscanf(fp,客房价格:%d,&Infoi.prize);fscanf(fp,客户姓名:%s,Infoi.name);fscanf(fp,身份证:%s,Infoi.ID_card);fscanf(fp,预付款:%d,&Infoi.ad_payment);fscanf(fp,入住时间:%s,Infoi.in_time);fscanf(fp,退房时间:%s,Infoi.leave_time);fclose(fp);n=i-1;int m;doprintf(n); printf(*n);登记。n);修改。n);查询。n);删除。n);浏览。n);结算。n);退出。n);prin

5、tf(1printf(2printf(3printf(4printf(5printf(6printf(7printf(*、n.scanf(%d,&m);switch(m)case 1: Insert(&count); break;case 2: Amend(count) ;break;case 3: Demand(count) ;break;case 4: Del(&count) ;break;case 5: Skim(count) ;break;case 6: Balance(count) ;break;case 7: break;default:printf( 错误选择!请重选 );bre

6、ak; while(m!=7); return 0;3 函数/定义 1插入函数void Insert(int *count) int i=0,in_num;n=n+1;if(*count=N) printf(overflow!);return; FILE *fp;fp=fopen(d:hotel manage system.txt,a);fprintf(fp,%d,n); for(i=*count;iN;i+)printf( 编号: ); scanf(%d,&in_num);int flag = 1; while(flag) flag=0;for(int ii=0;ii=N;ii+) if(I

7、nfoii.num=in_num) printf( 已经有相同编号! n);scanf(%d,&in_num);flag=1;break; Infoi.num=in_num;printf( 客房号: );scanf(%d,&Infoi.num);fprintf(fp, 客房号: %d,Infoi.num); printf( 空闲情况: ); scanf(%s,Infoi.idly);fprintf(fp, 空闲情况: %s,Infoi.idly); printf( 客房类型: );scanf(%s,Infoi.type); fprintf(fp, 客房类型: %s,Infoi.type); p

8、rintf( 客房价格: );scanf(%d,&Infoi.prize); fprintf(fp, 客房价格: %d,Infoi.prize); printf( 客户姓名: );scanf(%s,Infoi.name); fprintf(fp, 客户姓名: %s,Infoi.name); printf( 身份证: );scanf(%s,Infoi.ID_card); fprintf(fp, 身份证: %s,Infoi.ID_card); printf( 预付款: );scanf(%d,&Infoi.ad_payment); fprintf(fp, 预付款: %d,Infoi.ad_payme

9、nt); printf( 入住时间: );scanf(%s,Infoi.in_time);fprintf(fp, 入住时间: %s,Infoi.in_time); printf( 退房时间: );scanf(%s,Infoi.leave_time); fprintf(fp, 退房时间: %sn,Infoi.leave_time); break;fclose(fp);(*count)+;修改函数void Amend(int count)/ 定义 2int i,num,payment,tag=0;char idlyN,nameN,ID_cardN,in_timeN,leave_timeN; pri

10、ntf( 请输入要修改数据的编号: );scanf(%d,&num);for(i=0;in;i+)if(Infoi.num=num)tag=1;printf( 空闲情况 :%s,Infoi.idly);printf(客人姓名 :%s,Infoi.name);printf(身份证 :%s,Infoi.ID_card);printf(入住时间 :%s,Infoi.in_time);printf(退房时间 :%s,Infoi.leave_time);printf(预付费用 :%dn,Infoi.ad_payment);printf( 空闲情况 :);scanf(%s,idly);printf( 客人

11、姓名 :); scanf(%s,name); printf( 身份证 :); scanf(%s,ID_card); printf( 入住时间 :);scanf(%s,in_time); printf( 退房时间 :); scanf(%s,leave_time); printf( 预付费用 :); scanf(%d,&payment); strcpy(Infoi.idly,idly); strcpy(Infoi.name,name); strcpy(Infoi.ID_card,ID_card); strcpy(Infoi.in_time,in_time); strcpy(Infoi.leave_

12、time,leave_time); Infoi.ad_payment=payment;FILE *fp; fp=fopen(d:hotel manage system.txt,w); for(i=0;in;i+) fprintf(fp,%d,i+1); fprintf(fp, 客房号: %d,Infoi.num); fprintf(fp, 空闲情况: %s,Infoi.idly);fprintf(fp,客房类型:%s,Infoi.type);fprintf(fp,客房价格:%d,Infoi.prize);fprintf(fp,客户姓名:%s,Infoi.name);fprintf(fp,身份证

13、:%s,Infoi.ID_card);fprintf(fp,预付款:%d,Infoi.ad_payment);fprintf(fp,入住时间:%s,Infoi.in_time);fprintf(fp,退房时间:%sn,Infoi.leave_time); fclose(fp); if(!tag) printf( 没有查询到可修改的数据! );/定义 3查询函数void Demand(int count)int in_num,i=0,flag=1;printf( 请输入要查询的客房号: ); scanf(%d,&in_num);int tag=0;for(i=0;in;i+) if(Infoi.

14、num=in_num)tag=1;printf( 客房号 :%dn,Infoi.num);printf( 空闲情况 :%sn,Infoi.idly);printf( 客房类型 :%sn,Infoi.type);printf( 客房价格 :%dn,Infoi.prize); printf( 客人姓名 :%sn,Infoi.name); printf( 身份证 :%sn,Infoi.ID_card);printf( 入住时间 :%sn,Infoi.in_time); printf( 退房时间 :%sn,Infoi.leave_time); printf( 预付费用 :%dn,Infoi.ad_pa

15、yment); flag=0;break;if(!tag)printf( 没有查询到! );void Del(int *count)/定义 4删除函数int i,j,num,flag=1,tag=0;printf( 请输入要删除的客房号信息: );scanf(%d,&num);for(liox*counQSQOflagT+)宀if(-nfo 三 31101占113宀 forrA*counQSQOf-agj+) -nfoull-nfolj+二 -nforcounfi.adlpaymenf H 0八 s=rcpy (- nfocounM r - Dlcard 一=)八 s=rcpy(-nfocou

16、nM Lid-yi)八 s=rcpy (- nfocou nf 二 i nlfi mpJ八 s=rcpy(-nfocounML-eavelnme=)- s=rcpy(-nfocounM Lnamei)八 -nforcounfi.num H o 八 -nforcounfi.prN-e H q s=rcpy(-nfocounM Lfypei)八 flaguojagu 二(*counfTbreak 八ifmag)宀prinff(=萍血1ilL %s=-nfo三DICard)八 国雰一 d=-nfo 三.adlpaymeno 八 审肆一%s=-nfo 三5-IHme)八 陆別肆一%s_n=-nfo 三

17、.-eave Hme= 5彗甌一一蒲for(i=0;in;i+)printf( 第 %d 条记录: n,i+1);printf( 客房号 :%dn,Infoi.num);printf( 客房类型 :%sn,Infoi.type); printf(% 客房价格 :%dn,Infoi.ad_payment);printf( 空闲情况 :%dn,Infoi.prize);printf( 客人姓名 :%sn,Infoi.idly);printf( 客人身份证号 :%sn,Infoi.name);printf( 入住时间 :%sn,Infoi.ID_card);printf( 退房时间 :%sn,Inf

18、oi.in_time);printf( 预付费用 :%sn,Infoi.leave_time);printf(n);flag=0;/return;void Balance(int conut)/ 定义 6结算函数int i,x,fee,time;printf( 请输入要结算的客房号: ); scanf(%d,&x);for(i=0;iciu.ens and Set ings,kJ&|d-iiixstr3 o 讥桌面耀程设计賢告弓源程序一一邱_1请输入要删除的客房号信息:101小 *C = Docment s and Sb1 ngsAdKTii si r or 桌面谍程设(1报告与漁程序邱* -

19、醤J甘傍证号;Qiuqi退质引可预付畫用:2012kUl,MS.lb:M0图6浏览信息图4查询信息(3)功能4删除。(图5)(6)功能6结算。(图7)n卜* -夸傷查01 0 1 01 畫 馬2-2 專.1: 的11剪0 昇20大9B2H12.01.01.10:000帚 *C: DoeiLMein-t s and Settr ato r面l聚程设计 告与31 程序一-邱.图7结算余额2.进入相应功能后,进行数据处理。处理后的数据会保存在磁盘中便于系统的运作和数据的存储。 =- “.5宜客户姓宕l QhiWiogSrQiuMsnfl 疋単匕召,Uiuiirj*1奇Hi :利輔“处抽也齐杭 忌缶症

20、;3tK1MW1*2515 片丘Tjh :悅的9?艸M仙梟侶预预预3.信息可以在 d:hotel man age system.txt 中查询到。八、收获及体会对C语言在编写程序时的用处有了更明确的认识,懂得了编写C程序 的一般法方步骤。最大的收获是,编写程序时一定要有信心和勇气,要相信自己一定可以把这个程序编写出来。 分析问题做出算法,想好 思路,在心里有个大致的框架,然后按部就班的记下自己想到的每一 点内容,把写下的东西认真整理,查缺补漏,把一些细节的地方补上, 就这样一个貌似很难的程序就写出来了 (其实编程并不难,关键是要 投入,要钻到里面去)。下一步就是读程序了,读程序时一定要小心 仔细,一条语句、一条语句的读,看是否能输出自己想要输出的结果, 如果发现错误要马上改过来,再接着向下读,直到把程序调试的完美 无缺为至。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1