C语言课程设计报告书-火车票务管理系统_第1页
C语言课程设计报告书-火车票务管理系统_第2页
C语言课程设计报告书-火车票务管理系统_第3页
C语言课程设计报告书-火车票务管理系统_第4页
C语言课程设计报告书-火车票务管理系统_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C课程设计A组火车票务系统延边大学工学院C语言课程设计报告书题目: 火车票务系统(A) 班 级: 学 号: 姓 名: 指导教师: 二九 年 七 月 一系统功能的总体描述本系统要求实现火车票务基本信息的查询,订票、售票、退票、车次查询等。功能要求实现:火车票的基本信息:符合条件的车次名称、开时、到时、历时、里程、票价(硬座、软座、硬卧(上、中、下)软卧(上、中、下)车次类型、站名的查询显示,统计,添加(新加车次)、更改(售出票后需修改所剩票数)和删除(已发车次信息)等。二、系统基本功能 本系统可实现火车票务信息的管理和查询等功能。它的基本功能是建立火车票信息链表,存储火车票的基本信息,实现对已有

2、车次票务的查询、预订、售票、退票等业务的保存、修改等。软件输出 输入形式:软件提示信息丰富、容易理解,重点是依据火车票务的特点有明显的即时性和快速性。测试数据要求:本系统的测试数据当输入想要到达的目的地信息时输出符合的车次、到站时间、开车时间以及终到站时间,车次名称、开时、到时、历时、车次类型、站名必须用字符串数据;里程、车票剩余情况、票价情况必须用整型数据。对车票的基本信息进行查找时按目的地、时间和车次三种查找方式查找。测试数据要有即事性、快速性。三、系统具体分析(一)所需的功能1 输入功能:录入目的地信息 2 输出功能:查看所查信息 3 查询功能:查询符合车次及相关信息 4 修改功能:更新

3、系统信息5 删除功能:对已发车辆信息删除 6 票务功能:负责售票和退票业务7 安全功能:负责管理员密码审核、修改等安全(二)系统功能模块划分火车票务管理系统系统信息帮助退出系统历史记录票务功能查询功能密码识别密码重置录入信息删除信息修改信息通过目的地查询通过车次查询售票退票(三)各模块的功能描述主菜单模块功能功能模块程序功能描述主函数调用其他功能模块系统信息储存、修改、删除票务信息,此功能需要管理员密码验证查询功能主要预定义两种查询方式的调用,经查询后显示车次票务的信息票务功能用来调用两种票务方式即售票和退票历史记录记录历史操作信息,供备忘和查询帮 助对系统使用的部分说明,此部分以文件方式保存

4、,需要时可打开退 出用户退出系统子菜单模块功能描述密码识别识别管理员身份密码重置用以修改密码录入信息录入最新车次票务信息删除信息删除已发车次的旧信息修改信息修改因临时加开、临时停运、或票务的更改信息通过目的地查询输入想要到达的目的地查询终到站为所查地点车次、票务的全部信息通过车次查询输入想要乘坐的车次查询该车次的行车、票务的全部信息售 票办理售票业务退 票办理退票业务(四)函数调用过程主函数xtxx函数ggmimalrgnxggnscgnsavesaveccchanxunmddchaxunspgntpgncxgn函数pwgn函数lsjl函数exitmmyz注:标记处为函数调用四、系统核心算法1

5、、ccchanxun函数通过车次查询列车信息输入:要查询车次输出:相关信息Step1:输入要查询的列车号char6(在中国列车号有数字和字母组成,最长为5个字符,如:k8371因此为节省内存只需定义6字符长度的数组)Step2:用c与链表中的列车号(*p).lchao相比较判断strcmp(*p).lchao,c)是否等于零,否则进行step3,是则进行step4Step3:令p=p->next,判断p是否指向空节点NULL,若是则转到step2,否则进行step5Step4:显示相关信息(车次名称、开时、到时、历时、票价、车次类型等)Step5:显示未能找到所寻车次输入要查询车次cha

6、r6While(strcmp(*p).lchao,c)!=0&&m1!=NULL) P=NULLT F未能找到所寻车次显示该车次的全部录入信息p=p->next ccchanxun函数N-S流程图2、mddcharxun函数通过目的地查询最终能到达目的地的全部车次,以及全部相关信息输入:要查询目的地输出:相关信息Step1:输入要查询的目的地char20Step2:用c与链表中的终到站(*p).zhongdaozhan相比较判断strcmp(*p).zhongdaozhan,m)是否等于零,否则进行step3,是则进行step4Step3:令p=p->next,判断

7、p是否指向空节点NULL,若是则转到step2,否则进行step5Step4:显示相关信息(全部车次名称、开时、到时、历时、票价、车次类型等)Step5:显示未能找到所寻目的地。输入要查询的目的地char20While strcmp(*p).zhongdaozhan,m)!=0&&m1!=NULL) P=NULLT F未能找到所寻目的地显示相关信息(时间票价等)p=p->next mddcharxun函数N-S流程图3.lrgn函数有管理员将列车信息录入Step1:建立一个指向结构体的指针pStep2:将各项信息分别存放到结构体当中,如:输入车次gets(p->ch

8、eci),输入终到站gets(p->zhongdaozhan)输入运行日期时间scanf(“%d”,&p->yunxingriqi)4Spgn函数用来售出剩余车票输入:购买票数n输出:打印出车票Step1:查找是否有可以到达目的地的车次次过程需要调用mddchaxun函数Step2:输入要购买的数量n张,如果n小于剩余票数n<(*p).yupiao进行step3 否则执行step4Step3:执行p->yupiao=p->yupiao-n重新定义余票数,执行step5Step4:显示余票不足,重新选择票数,执行step2Step5:打印n张车票直到n<

9、;(*p).yupiaop->yupiao=p->yupiao-n余票不足,请重新输入 n<(*p).yupiaoT F输入要购买的票数n打印n张车票 Spgn函数N-S流程图5.tpgn函数用于办理退票业务算法同上函数6.mmyz函数用来审核管理员权限Step1:定义两个字符型组数char a20 b20,将用户名和密码分别放在数组当中Step2:比较输入的用户名和密码与预先存储在结构体中的用户名和密码是否相同,如果 !strcmp(*p)user,a)&&!strcmp(*p)key,b)不为零,则进行step4,否则进行step3Step3:显示您输入的

10、用户名或密码有误,请重新输入,转入step1Step4:显示密码正确,审核通过直到条件成立将用户名和密码存放到数组char a20 b20当中 !strcmp(*p)user,a) &&!strcmp(*p)key,b)T F用户名或密码有误,请重新输入密码已经通过验证密码已经通过验证继续进行系统信息修改 mmyz函数N-S流程图7. scgn函数删除已发列车的信息输入:要删除列车号输出:信息删除Step1:输入要删除的列车信息 c6Step2:若链表第一个列车号为要删除的列车号,p指向下一个结点作为链表新表头,则转step5,否则,p指针从第二个结点开始比较找出要删除的列车号Step3:将此结点后的值作为p->LChao.这样把列车信息c删除并连成新链表Step4:将自由指针释放Step5:显示此列车信息已删除P=head,输入要删除列车号c6 Strcmp(c,p->num)=0TFp=p->next;Head=pWhile(strcmp()!=0&&p->next!=NULL)q=p->next;p->next=q->next;释放q显示列车信息已被删除p=p->nextsc

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论