C语言课程设计火车票管理系统Word格式文档下载.docx

上传人:b****8 文档编号:22447569 上传时间:2023-02-04 格式:DOCX 页数:19 大小:17.57KB
下载 相关 举报
C语言课程设计火车票管理系统Word格式文档下载.docx_第1页
第1页 / 共19页
C语言课程设计火车票管理系统Word格式文档下载.docx_第2页
第2页 / 共19页
C语言课程设计火车票管理系统Word格式文档下载.docx_第3页
第3页 / 共19页
C语言课程设计火车票管理系统Word格式文档下载.docx_第4页
第4页 / 共19页
C语言课程设计火车票管理系统Word格式文档下载.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

C语言课程设计火车票管理系统Word格式文档下载.docx

《C语言课程设计火车票管理系统Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《C语言课程设计火车票管理系统Word格式文档下载.docx(19页珍藏版)》请在冰豆网上搜索。

C语言课程设计火车票管理系统Word格式文档下载.docx

voidINPUT();

//输入模块

voidSEARCH();

//查询模块

voidSELECT();

//统计模块

voidWRITE();

//文件记录模块

voidPRINT();

//打印模块

voidREAD();

//文件读取模块

voidWRONG();

//纠错模块

#defineN1000//最大列车组数

#definePrint"

%s%13s%10s%10s%12s%15s%11s\n"

T[i].code,T[i].data,T[i].lp,T[i].ap,T[i].lt,T[i].at,T[i].price//输出记录格式

#defineWrong"

\n!

!

输入错误,请重新输入!

\n"

#defineGeShi"

车次日期起点终点开车时间到达时间票价\n"

structTrain

{

charcode[10];

//车次

chardata[10];

//日期

charlp[10];

//leftplace起点

charap[10];

//arriveplace终点

charlt[10];

//lefttime开车时间

charat[10];

//arrivetime到达时间

charprice[10];

//票价

}T[N];

/*全局变量*/

inti=0;

//输入计数器

intn=0;

//合计计数器

charl[20];

//纠错空间

///////////////////////////////////////////////////////////////////////////////////////主函数

intmain()

intx;

do

{

x=MENU();

switch(x)

{

case1:

INPUT();

break;

case2:

SEARCH();

case3:

SELECT();

case4:

printf("

\n---------------------------------------"

);

\n正在退出,请按任意键退出"

\n\n"

\n---------------------------------------\n"

break;

default:

WRONG();

}

}while(x!

=4);

return0;

}

///////////////////////////////////////////////////////////////////////////////////////菜单模块

intMENU()

intchoice;

system("

cls"

printf("

\n----------------------------------------------\n"

----------------------------------------------\n"

------\n"

---欢迎进入火车票务管理系统---\n"

----------------------------------------------\n\n"

\n--------------请输入选项-------------\n"

1.录入火车时刻信息\n"

2.查询火车时刻信息\n"

3.统计火车车次\n"

4.退出\n"

-----------------------------------------\n"

请选择:

"

scanf("

%d"

&

choice);

gets(l);

returnchoice;

///////////////////////////////////////////////////////////////////////////////////////输入模块

voidINPUT()

charch;

{

system("

printf("

\n\n====================欢迎进入录入火车时刻信息界面====================\n"

do

\n新建列车信息?

(y/n)"

scanf("

%c"

ch);

gets(l);

if(ch!

='

y'

&

ch!

n'

WRONG();

}while(ch!

if(ch=='

---------------------"

\n录入第%d趟列车信息\n"

n+1);

车次"

gets(T[i].code);

日期"

gets(T[i].data);

起点"

gets(T[i].lp);

终点"

gets(T[i].ap);

开车时间"

gets(T[i].lt);

到达时间"

gets(T[i].at);

票价"

gets(T[i].price);

n++;

i++;

}while(i<

N);

WRITE();

\n"

--------------------------------\n"

系统记载的列车信息如下\n"

--------------------------------\n\n"

PRINT();

///////////////////////////////////////////////////////////////////////////////////////文件记录模块

voidWRITE()

{

FILE*fp,*fp1;

if((fp=fopen("

hchsk.txt"

"

w"

))==NULL)

无法创建文件!

\n\n"

getchar();

return;

}

if((fp1=fopen("

N.txt"

))==NULL)//用于记录共几趟车

}

for(i=0;

i<

n;

i++)

if(fwrite(&

T[i],sizeof(structTrain),1,fp)==0)

写入数据失败!

fprintf(fp1,"

n);

fclose(fp);

fclose(fp1);

}

///////////////////////////////////////////////////////////////////////////////////////文件读取模块

voidREAD()

r"

无法打开文件\n"

无法打开文件!

fscanf(fp1,"

n);

i++)

fread(&

T[i],sizeof(structTrain),1,fp);

///////////////////////////////////////////////////////////////////////////////////////打印模块

voidPRINT()

charch[10];

READ();

\n===========================================================================\n"

printf(GeShi);

i++)

printf(Print);

===========================================================================\n"

\n按任意键返回上级菜单:

gets(ch);

///////////////////////////////////////////////////////////////////////////////////////查询模块

voidSEARCH()

charname1[10];

//车次

charname2[10];

//终点

charname3[10];

//起点

charname41[10];

charname42[10];

//日期

charchoice;

intj;

intk;

\n\n====================欢迎进入查询火车时刻信息界面====================\n"

\n++++++++++++++++++请选择查找方式++++++++++++++++++\n\n"

----1.显示所有列车信息2.按车次查询3.按终点查询----\n"

-----4.按起点查询5.按终点和日期查询6.返回上级菜单----\n"

\n请选择:

scanf("

j);

gets(l);

switch(j)

PRINT();

\n---请输入车次---:

gets(name1);

\n---请输入终点---:

gets(name2);

\n---请输入起点---:

gets(name3);

case5:

gets(name41);

\n---请输入日期---:

gets(name42);

case6:

WRONG();

READ();

k=0;

if(j==2)

for(i=0;

{

if(strcmp(T[i].code,name1)==0)

{

printf("

\n按车次查找列车信息成功!

printf(GeShi);

break;

}

}

{

printf(Print);

k++;

\n-->

共查询到%d趟列车信息,请按任意键返回<

--"

k);

if(j==3)

if(strcmp(T[i].ap,name2)==0)

\n按终点查找列车信息成功!

if(j==4)

if(strcmp(T[i].lp,name3)==0)

\n按起点查找列车信息成功!

}

if(j==5)

if(strcmp(T[i].ap,name41)==0&

strcmp(T[i].data,name42)==0)

\n按终点和日期查找列车信息成功!

}

system("

\n\n-->

继续查找

(1),返回主菜单

(2)<

choice=getchar();

if(choice!

1'

choice!

2'

}while(choice!

}while(choice!

///////////////////////////////////////////////////////////////////////////////////////统计模块

voidSELECT()

intt,k;

\n\n====================欢迎进入统计火车车次界面====================\n"

\n-|--|--|--|-请选择统计方式-|--|--|--|-\n\n"

1.按终点统计每日的车次数\n"

2.按起点统计每日的车次数\n"

t);

switch(t)

请输入终点:

请输入起点:

WRONG();

if(t==1)

k=0;

if(strcmp(T[i].lp,name1)==0)

\n按终点统计列车信息成功!

if(t==2)

if(strcmp(T[i].lp,name2)==0)

\n按起点统计列车信息成功!

继续统计

(1),返回主菜单

(2)<

///////////////////////////////////////////////////////////////////////////////////////纠错模块

voidWRONG()

\n\n--->

输入错误,请按任意键返回!

<

---"

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1