1、C语言课程设计汽车车票管理系统中国海洋大学青岛学院C语言课程设计报告书题 目汽车车票管理系统学生姓名指导教师学 院专业班级 组内分工姓名主要任务占系统比例主体框架、查询、票数变更40%信息的录入、浏览30%订票、退票30%1 前言 课程设计题目:汽车车票管理管理系统1.2 课程设计目的:车票管理管理系统是车站对车票信息管理的工具。系统能够实现车票信息的录入,浏览,查询,订票,退票等功能.1.3 功能概述:车票管理系统主要分为管理员登录和普通用户登录两大部分。其中管理员登录后,可以录入、浏览和查询车票信息。普通用户登录后可进行查询、退票和订票等操作。2 需求分析2.1 车次的信息包括 :班次、发
2、车时间、起点站、终点站、行车时间、额定人数、已定票人数、票价等。2.2 系统能够完成车票信息的录入、浏览、查询、订票、退票等功能。(1)车次信息录入功能: 可进行车次信息的录入,并以文件保存。(2)车次信息浏览功能: 浏览所有班次信息,并可显示出所有班次当前状态,若某车次发车时间已过,则显示“车已开出”。(3)车次信息查询功能: 查询车次信息。可按班次号查询,也可按终点站查询。(4)车票订票功能:只有当已订票人数小于额定载客量且该班次未到发车时间时才能完成订票。(5)车票退票功能: 退票时,输入退票班次,若此班次未发出则可能完成退票。(6)票数变更功能:当用户订票或退票成功后,票数会自动发生相
3、应的改变。3 模块设计图4 NS流程图清单4.1录入(load())system(cls); printf(*欢迎使用车票管理系统*n);printf(当前时间:); system_time(); /调用系统时间函数FILE *fp; ticket train;T(fp=fopen(record,a+)=NULL F printf(File(record) open error!n); fscanf(fp,%d,&record); fclose(fp);T(fp=fopen(ticket,a+)=NULL F printf(File(ticket) open error!n);fputs(n,
4、fp); printf(请输入班次:n); scanf(%d,&train.number); fprintf(fp,%d,train.number); fputs(t,fp); printf(请输入发车时间:n); scanf(%d:%d,&train.ft.hour,&train.ft.minute); fprintf(fp,%02d:%02d,train.ft.hour,train.ft.minute); fputs(t,fp); printf(请输入起始站:n); scanf(%s,&train.origin_station); fputs(train.origin_station,fp
5、);exit(0); exit(0); fputs(t,fp); printf(请输入终点站:n); scanf(%s,&train.last_station); fputs(train.last_station,fp); fputs(t,fp); printf(请输入持续时间:n); scanf(%lf,&train.last_time); fprintf(fp,%.2lf,train.last_time); fputs(t,fp); printf(请输入最大载客量:n); scanf(%d,&train.max_number); fprintf(fp,%d,train.max_number
6、); fputs(t,fp); printf(请输入已售出票数:n); scanf(%d,&train.sold_ticket);fprintf(fp,%d,train.sold_ticket);fputs(t,fp);printf(请输入票价(远):n);scanf(%d,&train.price)fprintf(fp,%d,train.price); record+; fclose(fp)T(fp=fopen(record,w+)=NULL Fprintf(File(record) open error!n); fprintf(fp,%d,record); fclose(fp);print
7、f(*录入成功,请继续选择*n); printf(* 1.继续录入 *n);printf(* 2.返回管理员菜单 *n);printf(*n);int n;printf(请输入您想做的操作: );scanf(%d,&n); exit(0);case n, n=1,2case 1: case 2:load(); break;glymenu();4.2 浏览(show())system(cls);printf(*欢迎使用车票管理系统*n); printf(当前时间:); system_time(); FILE *fp; ticket train;T(fp=fopen(ticket,r)=NULL
8、F printf(File(ticket) open error!n); exit(0);printf(n班次 发车时间 起点 终点 行车时间(小时) 额定载量 已定票人数 票价(元)状态n); 当(!feof(fp)为真fscanf(fp,%dt%d:%d,&train.number,&train.ft.hour,&train.ft.minute); fscanf(fp,%s%s,&train.origin_station,&train.last_station); fscanf(fp,%lf%d%d%d,&train.price); printf(%dt%02d:%02dt ,train.
9、number,train.ft.hour,train.ft.minute); printf(%st%st,train.origin_station,train.last_station);printf(%.2lft%dt%dt%dt,trai,train.price);T(syshourtrain.ft.hour)|(syshour=train.ft.hour)&(sysminutetrain.ft.minute) Fprintf(车已开出); printf(n); printf(n); fclose(fp)T(fp=fopen(record,r)=NULL F printf(File(rec
10、ord) open error!n); exit(0); fscanf(fp,%d,&record); fclose(fp); printf(n共有%d条车次信息n,record); system(pause); glymenu()4.3 按班次查询(searsh1()) system(cls); printf(*欢迎使用车票管理系统*n); printf(当前时间:); system_time(); int m; int flag=1; FILE *fp; ticket train; printf(请您输入你要查询的班次:); scanf(%d,&m);T(fp=fopen(ticket,r
11、)=NULL F printf(File open error!n); exit(0); 当(! feof(fp)为真fscanf(fp,%dt%d:%d,&train.number,&train.ft.hour,&train.ft.minute); fscanf(fp,%s%s,&train.origin_station,&train.last_station);fscanf(fp,%lf%d%d%d,&train.price); ()&(flag=1)T F printf(n班次 发车时间 起点 终点 行车时间(小时) 额定载量 已定票人数t票价(元)状态n);continue;print
12、f(%dt%02d:%02dt,train.number,train.ft.hour,train.ft.minute);printf(%st%st,train.origin_station,train.last_station);printf(%.2lft%dt%dt%dtold_ticket); T (syshourtrain.ft.hour)| (syshour=train.ft.hour)& (sysminutetrain.ft.minute) Fprinf(车已开出);printf(n);printf(n); flag=0;fclose(fp); flag=1T Fprintf( n!没有此条车次记录!n);printf(n);printf(*查询完成,请继续选择*n);printf(* 1.继续按班次查询 *n);printf(* 2.按起点站和终点站查询 *n);printf(* 3.返回主菜单 *n);printf(*n);int n;printf(请输入您想做的操作: );scanf(%d,&n); case n, n=1,2,3case 1:case 2:case 3:searsh1(); break;searsh2();break;mainmenu();4.4按起点站和终点站查询(searsh2()) system(cls); printf(
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1