二、设计容
设计一个火车票务管理系统,用C语言实现。对该系统的要求如下: 需求描述: 1.系统功能
(1)火车时刻信息录入。包括车次、日期、起点、终点、开车时间、到达时间、票价。数据存入数据文件hchsk.dat或hchsk.txt中。
(2)火车时刻信息查询。
按照车次查询 按终点查询 按起点查询 按终点和日期查询
(3)统计
按终点统计每日的车次数 按起点统计每日的车次数
2. 系统主界面应有以下功能选项
录入火车时刻信息 查询火车时刻信息 统计火车车次
专业资料
退出
三、详细设计说明
#include
int MENU(); //菜单模块 void INPUT(); //输入模块 void SEARCH(); //查询模块 void SELECT(); //统计模块 void WRITE(); //文件记录模块 void PRINT(); //打印模块 void READ(); //文件读取模块 void WRONG(); //纠错模块 #define N 1000 //最大列车组数 #define
\ %sssssss\\n\i].price //输出记录格式
#define Wrong \ ! ! ! ! ! ! ! ! ! ! ! 输入错误,请重新输入 ! ! ! ! ! ! ! ! ! ! ! \\n\ #define GeShi \ 车次 日期 起点 终点 开车时间 到达时间 票价\\n\ struct Train {
char code[10]; //车次 char data[10]; //日期
char lp[10]; //left place 起点 char ap[10]; //arrive place 终点 char lt[10]; //left time 开车时间
专业资料
char at[10]; //arrive time 到达时间 char price[10]; // 票价
}T[N]; /* 全局变量 */
int i=0; //输入计数器 int n=0; //合计计数器 char l[20]; //纠错空间
///////////////////////////////////////////////////////////////////////////////////////主函数
int main() { \
break;
int x; do {
x=MENU(); switch(x) {
case 1:INPUT(); break; case 2:SEARCH(); break; case 3:SELECT(); break; case 4:
printf(\ ---------------------------------------\printf(\ 正在退出,请按任意键退出\printf(\ \
printf(\ ---------------------------------------\\n
default:WRONG(); break; }
}while(x!=4); return 0;
专业资料
}
///////////////////////////////////////////////////////////////////////////////////////菜单模块 int MENU() { }
///////////////////////////////////////////////////////////////////////////////////////输入模块 void INPUT() {
char ch; do {
int choice;
system(\
printf(\ ----------------------------------------------\\n\printf(\ ----------------------------------------------\\n\
printf(\ --- ---\\n\printf(\ --- 欢迎进入火车票务管理系统 ---\\n\printf(\ --- ---\\n\printf(\ ----------------------------------------------\\n\printf(\ ----------------------------------------------\\n\\n\printf(\ -------------- 请输入选项 -------------\\n\printf(\ 1.录入火车时刻信息\\n\printf(\ 2.查询火车时刻信息\\n\printf(\ 3.统计火车车次\\n\printf(\ 4.退出\\n\
printf(\ -----------------------------------------\\n\printf(\ 请选择: \scanf(\gets(l); return choice;
专业资料
system(\
printf(\ ====================欢迎进入 录入火车时刻信
息 界面====================\\n\
do {
printf(\ 新建列车信息?(y/n) \scanf(\gets(l);
if(ch!='y'&&ch!='n')
WRONG ();
}while(ch!='y'&&ch!='n'); if(ch=='n')
break;
printf(\ ---------------------\
printf(\ 录入第%d趟列车信息\\n\printf(\ 车次 \gets(T[i].code);
printf(\ 日期 \gets(T[i].data);
printf(\ 起点 \gets(T[i].lp);
printf(\ 终点 \gets(T[i].ap);
printf(\ 开车时间 \gets(T[i].lt);
printf(\ 到达时间 \gets(T[i].at);
printf(\ 票价 \gets(T[i].price); n++;
专业资料
相关推荐: