C语言程序设计火车订票系统程序设计报告.pdf
《C语言程序设计火车订票系统程序设计报告.pdf》由会员分享,可在线阅读,更多相关《C语言程序设计火车订票系统程序设计报告.pdf(34页珍藏版)》请在咨信网上搜索。
1、 设计题目:火车订票系统设计 专业:电子信息工程 班级:09 级 3 班 姓名:学号:目 录 一 总体设计(包含几大功能模块).1 二 详细设计(各功能模块的具体实现算法流程图).2 三 调试分析(包含各模块的测试用例,及测试结果).3 3.1 源程序.6 3.2 调试与测试.31 四 总结.33 一 总体设计(包含几大功能模块)1.Insert a train information(插入火车信息)2.inquire a train jinformation(查询火车信息)3.Book a train ticket(订票)4.Update the train information(更新火车
2、信息)5.Advice to you about the train(建议)6.Save information to file(储存信息归档)7.Quit the system(退出系统)二、详细设计(各功能模块的具体实现算法流程图)2.1 各函数的功能和实现 1.Insert a train information(插入火车信息):输入包括火车班次,最终目地,始发站,火车到站时间,车票价格,所定票号。可用函数 void input 来实现此操作 2.inquire a train jinformation(查询火车信息):没有任何记录 3.Book a train ticket(订票):输
3、入你想要去的城市 4.Update the train information(更新火车信息):可用 void find()来实现 5.Advice to you about the train(关于火车对你的建议)6.Save information to file(储存信息归档)7.Quit the system(退出系统):可用一个函数 exit()来实现,首先将信息保存到文件中,释放动态创建的内存空间,再退出此程序。流程图 详见A4纸上手绘 三 调试分析(包含各模块的测试用例,及测试结果)3.1 源程序#include#include#include#include int shoud
4、save=0;int count1=0,count2=0,mark=0,mark1=0;/*定义存储火车信息的结构体*/struct train char num10;/*列车号*/char city10;/*目的城市*/char takeoffTime10;/*发车时间*/char receiveTime10;/*到达时间*/int price;/*票价*/int bookNum;/*票数*/;/*订票人的信息*/struct man char num10;/*ID*/char name10;/*姓名*/int bookNum;/*需求的票数*/;/*定义火车信息链表的结点结构*/typed
5、ef struct node struct train data;struct node*next;Node,*Link;/*定义订票人链表的结点结构*/typedef struct people struct man data;struct people*next;bookMan,*bookManLink;/*初始界面*/void printInterface()puts(*);puts(*Welcome to use the system of booking tickets *);puts(*);puts(*You can choose the operation:*);puts(*1:
6、Insert a train information *);puts(*2:Inquire a train information *);puts(*3:Book a train ticket *);puts(*4:Update the train information *);puts(*5:Advice to you about the train *);puts(*6:save information to file *);puts(*7:quit the system *);puts(*);/*添加一个火车信息*/void InsertTraininfo(Link linkhead)s
7、truct node*p,*r,*s;char num10;r=linkhead;s=linkhead-next;while(r-next!=NULL)r=r-next;while(1)printf(please input the number of the train(0-return);scanf(%s,num);if(strcmp(num,0)=0)break;/*判断是否已经存在*/while(s)if(strcmp(s-data.num,num)=0)printf(the train%shas been born!n,num);return;s=s-next;p=(struct n
8、ode*)malloc(sizeof(struct node);strcpy(p-data.num,num);printf(Input the city where the train will reach:);scanf(%s,p-data.city);printf(Input the time which the train take off:);scanf(%s,p-data.takeoffTime);printf(Input the time which the train receive:);scanf(%s,&p-data.receiveTime);printf(Input the
9、 price of ticket:);scanf(%d,&p-data.price);printf(Input the number of booked tickets:);scanf(%d,&p-data.bookNum);p-next=NULL;r-next=p;r=p;shoudsave=1;/*打印火车票信息*/void printTrainInfo(struct node*p)puts(nThe following is the record you want:);printf(number of train:%sn,p-data.num);printf(city the train
10、 will reach:%sn,p-data.city);printf(the time the train take off:%snthe time the train reach:%sn,p-data.takeoffTime,p-data.receiveTime);printf(the price of the ticket:%dn,p-data.price);printf(the number of booked tickets:%dn,p-data.bookNum);struct node*Locate1(Link l,char findmess,char numorcity)Node
11、*r;if(strcmp(numorcity,num)=0)r=l-next;while(r)if(strcmp(r-data.num,findmess)=0)return r;r=r-next;else if(strcmp(numorcity,city)=0)r=l-next;while(r)if(strcmp(r-data.city,findmess)=0)return r;r=r-next;return 0;/*查询火车信息*/void QueryTrain(Link l)Node*p;int sel;char str15,str210;if(!l-next)printf(There i
12、s not any record!);return;printf(Choose the way:n1:according to the number of train;n2:according to the city:n);scanf(%d,&sel);if(sel=1)printf(Input the the number of train:);scanf(%s,str1);p=Locate1(l,str1,num);if(p)printTrainInfo(p);else mark1=1;printf(nthe file cant be found!);else if(sel=2)print
13、f(Input the city:);scanf(%s,str2);p=Locate1(l,str2,city);if(p)printTrainInfo(p);else mark1=1;printf(nthe file cant be found!);/*订票子模块*/void BookTicket(Link l,bookManLink k)Node*r10,*p;char ch,dem;bookMan*v,*h;int i=0,t=0;char str10,str110,str210;v=k;while(v-next!=NULL)v=v-next;printf(Input the city
14、you want to go:);scanf(%s,&str);p=l-next;while(p!=NULL)if(strcmp(p-data.city,str)=0)ri=p;i+;p=p-next;printf(nnthe number of record have%dn,i);for(t=0;ti;t+)printTrainInfo(rt);if(i=0)printf(ntttSorry!Cant find the train for you!n);else printf(ndo you want to book it?n);scanf(%d,&ch);if(ch=1)h=(bookMa
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 火车 订票 系统 程序设计 报告
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【人****来】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【人****来】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。