C语言程序设计_火车订票系统程序设计报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

设计题目:火车订票系统设计

专业:电子信息工程

班级: 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(更新火车信息)

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(订票):输入你想要去的城市

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 shoudsave=0 ;

int count1=0,count2=0,mark=0,mark1=0 ;

/*定义存储火车信息的结构体*/

struct train

{

char num[10];/*列车号*/

char city[10];/*目的城市*/

char takeoffTime[10];/*发车时间*/

char receiveTime[10];/*到达时间*/

int price;/*票价*/

int bookNum ;/*票数*/

};

/*订票人的信息*/

struct man

{

char num[10];/*ID*/

char name[10];/*姓名*/

int bookNum ;/*需求的票数*/ };

/*定义火车信息链表的结点结构*/ typedef 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: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)

{

struct node *p,*r,*s ;

char num[10];

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 '%s'has been born!\n",num);

return ;

相关文档
最新文档