C语言课程设计宾馆客房管理系统报告.doc
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程设计 宾馆 客房 管理 系统 报告
- 资源描述:
-
C语言课程设计宾馆客房管理系统报告 27 2020年4月19日 文档仅供参考 《 C 语 言 》 课程设计报告 标题:宾馆客房管理系统 学号: 姓名: 同组人员: 年级专业:09电子信息工程 指导老师: 完成日期: /6/21 目 录 一、程序的具体分工 二、课题要求 三、课题分析与设计 四、选题背景 五、程序介绍 六、源程序代码与调试 七、流程图 八、结语 九、参考书目 一、程序的具体分工 第一部分包括主函数和menu菜单函数是由叶伟完成,第二部分包括客人的入住(checkin)函数和退房(checkout)函数由我完成,第三部分为查询(lookfor)函数由王业生负责。 二、课题要求 1) 某宾馆有301、302、303、304、305五个标准间,每个标准间可住2人; 2) 链表存储结构:姓名、性别、房号、后续指针,按房间号有序; 3) 能实现入住(注意性别)和退房,能按给定姓名、房号查询; 4) 建议采用链表结构,但用其它方法实现也可。 三、课题分析与设计 本程序是非数值计算型算法设计,我们设计出了宾馆客房管理系统的基本功能,并设计了简单的界面。本程序主要考察对自定义函数的熟悉程度,本程序主要使用的是结构体和链表的相关操作,包括结构体数组的输入、输出、查找、删除等。我们设计的这个宾馆客房系统也初步实现了人员信息的显示、删除、查找、添加等必要的功能。 四、 选题背景 C语言是当前世界上流行、使用最广泛的高级程序设计语言。1972年,C语言在美国贝尔实验室里问世,后来又被多次改进,并出现了多种版本。80年代初,美国国家标准化协会(ANSI),根据C语言问世以来各种版本对C语言的发展和扩充,制定了ANSIC标准。 当前,在微机上广泛使用的C语言编译系统有MicrosoftC、Turbo C 、Visual C++等。这 C语言版本不但实现了ANSIC标准,而且在此基础上各自作了一些扩充,使之更加方便、完美。 C语言是一种结构化语言。它层次清晰,便于按模块化方式组织程序,易于调试和维护。C语言的表现能力和处理能力极强。它不但具有丰富的运算符和数据类型,便于实现各类复杂的数据结构。它还能够直接访问内存的物理地址,进行位(bit)一级的操作。由于C语言实现了对硬件的编程操作,因此C语言集高级语言和低级语言的功能于一体。既可用于系统软件的开发,也适合于应用软件的开发。 另外,C语言还具有效率高,可移植性强等特点。因此广泛地移植到了各类各型计算机上,从而形成了多种版本的C语言。 为了将本学期所学C语言知识应用于实际,加深对C语言的理解与掌握,我院开设了C语言课程设计这门课程。而我们小组选取了宾馆客房管理系统这个课题,以此来锻炼我们编写程序的能力。 五、程序介绍 宾馆客房管理系统由8个函数组成,包括main函数、menu函数、checkin函数、checkout函数、lookfor函数,其中checkin函数又包括一个add子函数,lookfor函数包括search1和search2两个子函数。 main函数主要是对menu函数、checkin函数、checkout函数、lookfor函数进行声明,建立静态链表而且对结构体中num、sex进行赋值。 menu函数是界面函数,有两个功能。一是输出一个界面,二是作为进入其它函数的入口。输入1则执行checkin函数;输入2则执行checkout函数 ,输入3则执行lookfor函数。 checkin函数的功能是对入住房客的信息进行统计。首先、函数先对五个房间的入住情况进行检查,并输出相应的信息。例如、若房间301是空的,则显示可住两人信息;若已住一人,则显示可住一人信息,而且同时显示可住房客的性别;若已有两人入住,则不显示任何信息。如果房客已决定入住,则输入1,进入add函数,按提示输入房客信息即可。若要返回menu函数,则输入1。 checkout函数的功能是退房。按提示信息输入房间号和姓名即可实现退房。若要返回menu函数,输入1。 lookfor函数的功能是查询房客的信息,有按姓名查找和按房间号查找两种查询方式。输入1则执行search1子函数,即按姓名查找;输入2则执行search2子函数,即按房号查找;输入3,执行manu函数。若按姓名查找,则输入姓名即可;若按房间号查找,则输入房间号即可;若要退回lookfor函数,则输入1。 六、源程序代码与调试 代码: #include<stdio.h> #include<conio.h> #include<string.h> #define NULL 0 struct restaurant { int num; char name[2][20]; char sex[2]; struct restaurant *next; }; void main() { void menu(struct restaurant *pt0); void checkin(struct restaurant *pt1); void checkout(struct restaurant *pt2); void lookfor(struct restaurant *pt3); struct restaurant a,b,c,d,e,*head,*p; a.num=301,b.num=302,c.num=303,d.num=304,e.num=305; a.sex[0]=a.sex[1]=b.sex[0]=b.sex[1]=c.sex[0]=c.sex[1]=d.sex[0]=d.sex[1]=e.sex[0]=e.sex[1]=' '; head=&a;a.next=&b; b.next=&c;c.next=&d; d.next=&e; e.next=NULL; p=head; menu(p); } void menu(struct restaurant *pt0) { int i; clrscr(); textcolor(5); gotoxy(10,5); cprintf(" The Hotel Management System\n"); gotoxy(10,7); cprintf(" Welcome\n"); gotoxy(10,8); cprintf(" **************Menu************\n"); gotoxy(10,9); cprintf(" * 1. checkin *\n"); gotoxy(10,10); cprintf(" * 2. checkout *\n"); gotoxy(10,11); cprintf(" * 3. lookfor *\n"); gotoxy(10,12); cprintf(" ******************************\n"); gotoxy(10,13); cprintf(" Please Enter Your Choice<1~3>:"); scanf("%d",&i); switch(i) { case 1:checkin(pt0);break; case 2:checkout(pt0);break; case 3:lookfor(pt0);break; } } void checkin(struct restaurant *pt1) { void add(struct restaurant *pt1); int i,k; struct restaurant *p; p=pt1; clrscr(); for(i=0;i<5;i++) {if(pt1->sex[0]==' '&&pt1->sex[1]==' ') printf("room:%d\ntwo person can live here\n",pt1->num); else if(pt1->sex[0]==' '&&pt1->sex[1]!=' ') {printf("rome:%d\n",pt1->num); printf("one person can live here,sex:%c\n",pt1->sex[1]);} else if(pt1->sex[0]!=' '&&pt1->sex[1]==' ') {printf("rome:%d\n",pt1->num); printf("one person can live here,sex:%c\n",pt1->sex[0]);} pt1=pt1->next; } printf("1:continue\n2:return\nInput your chioce:"); scanf("%d",&k); switch(k) { case 1:add(p);break; case 2:menu(p);break; } } void add(struct restaurant *pt1) {struct restaurant *p; int i,j,k; char ch1,ch2,str[20]; p=pt1; printf("Input room number and sex and name:\n"); scanf("%d%c%c%s",&i,&ch1,&ch2,&str); for(j=0;j<5;j++) { if(i==pt1->num) {for(k=0;k<2;k++) if(pt1->sex[k]==' ') {pt1->num=i;pt1->sex[k]=ch2;strcpy(pt1->name[k],str);break;} j=5;} pt1=pt1->next; } checkin(p); } void checkout(struct restaurant *pt2) { struct restaurant *p; int i,j,k; char str[20]; p=pt2; clrscr(); do{pt2=p; printf("Input rome number and name:\n"); scanf("%d",&k); if(k==1){menu(p);break;} else {scanf("%s",str); for(i=0;i<5;i++) {if(k==pt2->num) {for(j=0;j<2;j++) if(strcmp(str,pt2->name[j])==0) { memset(pt2->name[j],' ',20); pt2->sex[j]=' ';break;} break;} pt2=pt2->next;} } }while(1); } void lookfor(struct restaurant *pt3) {void search1(struct restaurant *pt4); void search2(struct restaurant *pt4); int i; char str[20]; clrscr(); printf("1:search by inputing name\n2:search by inputing room number\n3:return\n"); printf("please input your choice:"); scanf("%d",&i); switch(i) { case 1:search1(pt3);break; case 2:search2(pt3);break; case 3:menu(pt3);break;} } void search1(struct restaurant *pt4) { struct restaurant *p; int n,i,j; char str1[20]={'1'},str2[20]; p=pt4; clrscr(); do{pt4=p; printf("Input name:\n"); scanf("%s",&str2); if(strcmp(str1,str2)==0)lookfor(p); else for(i=0;i<5;i++) {for(j=0;j<2;j++) if(strcmp(str2,pt4->name[j])==0) printf("rome:%d\tsex:%c\tname:%s\n",pt4->num,pt4->sex[j],pt4->name[j]); pt4=pt4->next;} }while(1); } void search2(struct restaurant *pt4) {struct restaurant *p; int i,j,k; char str[20]; p=pt4; clrscr(); do{pt4=p; printf("Input room number:\n"); scanf("%d",&j); if(j==1){lookfor(p);break;} else for(i=0;i<5;i++) {if(j==pt4->num) {for(k=0;k<2;k++) if(pt4->sex[k]!=' ') printf("room:%d\tsex:%c\tname:%s\n",pt4->num,pt4->sex[k],pt4->name[k]); break;} pt4=pt4->next;} }while(1); } 调试: 1、 菜单函数执行结果: 进入程序后进入程序主菜单 结果如下: 输入1进入checkin函数,输入2进入checkout函数,输入3进入lookfor函数. 2、checkin入住函数结果: 进入入住函数界面 运行结果如下 输入1继续 运行结果如下: 输入房间号性别和姓名 例如:输入 301 m yewei 运行结果如下: 输入1返回到menu函数 3、lookfor(查询)函数结果: 输入1按姓名查找,输入2按房间号查找,输入3返回menu函数。 选择查找方式:输入1按姓名查找; 例如输入yewei 结果: 输入1返回lookfor函数。 输入2按房间号查找,结果: 例如输入301 结果: 输入1返回到lookfor函数 4、checkout(退房)函数结果: 输入房间号和姓名即可实现退房 例如输入301 yewei即可 输入1返回到menu函数 七、流程图 八、结语 经过这次课程设计,在我和我们小组成员的共同的努力下,将《宾馆客房管理系统》这个软件编写出来并运行成功。在此同时,也加深了我对谭浩强的《C语言程序设计》这本书的体会和了解。我对很多的函数有了新的认识,也学会了运用多种函数,我也明白了写软件的基本过程和基本方法。写软件的过程中我又学到了曾经自己不知道的函数或是自己不会的 函数的用法。这次课程设计课总的来说让我受益匪浅。在软件的设计过程中遇到了很多的困难。在软件一次一次的调试失败下曾经想过要放弃。我最后还是让自己坚持了下来,毫不畏惧困难,在同学和老师的帮助与讲解下我总算是顺利的完成了软件的设计。虽然在调试程序遇到了很多的困难,当软件调试成功时那种喜悦的感觉没有什么东西能够代替的。在程序的编写过程中我发现我自己有很多的知识漏洞和缺陷,需要进一步努力学习来完善自己。 在这几天的编写过程中我对C语言有了更进一步的认识和了解。此次编程过程的经验和知识肯定能促进我以后的学习。 此次课程设计不但给了我很多很好的经验,也让我体会到了失败时的焦急和难受,成功时的兴奋与喜悦。同时我们小组成员互帮互助,让我认识到团队的力量,团结就是力量。 九、参考书目 [1] 谭浩强,C程序设计教程,清华大学出版社, [2] 赵永哲,李雄飞,戴秀英编著,《C语言程序设计》,科学出版社, [3] 夏宽理,赵子正编著,《C语言程序设计》,中国铁道出版社, [4] 谭浩强编著,《C程序设计》,清华大学出版社,1991年 [5] Gary J. Bronson, A First Book of ANSI C (Fourth Edition), Publishing House of Electronics Industry, . [6] Al Kelley, Ira Pohl, A Book on C: Programming in C (Fourth Edition), China Machine Press, . [7] Brian W. Kernighan, Dennis M. Ritchie, The C Programming Language, China Machine Press, .展开阅读全文
咨信网温馨提示:1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。




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



实名认证













自信AI助手
















微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/3530057.html