1、 课程设计课程设计报告报告 姓名 班级 学号 课程设计信息课程设计信息 课程名称 C 程序设计 课程设计题目 火车票信息管理系统 课程设计时间 2011-11-1 至 2011-12-30 成绩 评阅教师 20102011 学年第学年第一一学期学期 票务信息管理程序票务信息管理程序 一、课程设计内容 我所设计的程序是一个火车票信息管理系统,其是从南京火车站南京火车站通向 47 座 城市的火车票的查询,购买,退订的程序。 其涉及的主要算法有:1 输入;2.查询;3.输出;4.选择;5.返回。 二、课程设计目的 设计南京火车站的票务信息管理程序, 其主要问题要求是做一个车票购买的函数 的显示程序
2、三、算法的基本思想 1.数据的结构 此程序需要设计 2 个数据结构,结构体设计如下: (1)typedef struct traininfor char station1010; /记录车站信息 char tnumber20; /车次号 float price;/车票价格 int lnumber;/生成票量 char time20;/到站时间 pemp; (2)struct ticket char buyer10;/购票人姓名 char source30;/起始站 char dest30;/终点站 int bnumber;/购买张数 ; 2.函数定义 程序源文件中包含的函数如下 源文件 函数类
3、型 功能说明 void menu(pemp *pointtr,struct ticket *pointtk) 打印主菜单 ticket.c void buy(pemp *pointtr,struct ticket *pointtk) 购买车票 void returnt(pemp *pointtr,struct ticket *pointtk) 退票 void check(pemp *pointtr,struct ticket *pointtk) 查看起始地车票信息 void show(struct ticket *pointtk, pemp *pointtr) 显示车票信息 Void exit
4、() 退出程序 3.处理过程 1)菜单显示程序 void menu(pemp *pointtr,struct ticket *pointtk) int a; printf(“nnnn -目录-n“); printf(“ 1,查询车票n“); printf(“ 2,购买车票n“); printf(“ 3,退订车票n“); printf(“ 4,退出程序n“); printf(“ 请输入选项序号:“); scanf(“%d“, if(a=1) check(pointtr,pointtk);/按起始地查找 menu(pointtr,pointtk);/显示菜单程序 else if(a=2) buy(
5、pointtr,pointtk);/购买车票 else if(a=3) returnt(pointtr,pointtk);/退订车票 else if(a=4) printf(“谢谢使用!“); /exit(); exit(0); 2)车票购买函数 void buy(pemp *pointtr,struct ticket *pointtk) char choice10; int buynumber; printf(“请输入您的姓名:n“); scanf(“%s“,pointtk-buyer);/输入姓名 check(pointtr,pointtk);/查询是否有车票 if(strcmp(poin
6、ttk-dest,“o“)=0)/如果没有 给出提示 printf(“无此站!返回菜单!n“); menu(pointtr,pointtk); else printf(“您确定购买此车票吗? 1.是 2.否n“);/确认购买 scanf(“%d“,choice); if(strcmp(choice,“1“)=0) printf(“请输入您要购买的张数:n“);/输入张数 scanf(“%d“, if(buynumberlnumber)-buynumber)=0) printf(“购买成功!返回菜单n“); pointtk-bnumber=buynumber; (pointtr-lnumber)-=buynumber; menu(p