火车票系统课程设计报告Word文档格式.docx

上传人:b****7 文档编号:21918931 上传时间:2023-02-01 格式:DOCX 页数:9 大小:97.63KB
下载 相关 举报
火车票系统课程设计报告Word文档格式.docx_第1页
第1页 / 共9页
火车票系统课程设计报告Word文档格式.docx_第2页
第2页 / 共9页
火车票系统课程设计报告Word文档格式.docx_第3页
第3页 / 共9页
火车票系统课程设计报告Word文档格式.docx_第4页
第4页 / 共9页
火车票系统课程设计报告Word文档格式.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

火车票系统课程设计报告Word文档格式.docx

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

火车票系统课程设计报告Word文档格式.docx

(4)实验要求

要求采用多线程编程,实现车票信息的查询,录入,更新,车次的修改;

实现用户注册登录,订票查询、火车票预订、退票申请以及后台方面的列车车次信息发布更新、车票生成、提供取票服务。

(5)实现思路

该算法用c语言编写,再在linux下用vi建立文档,gcc后生成可行文件后,./运行。

C语言实现思路为1.把ticket,user,定义为结构,其中ticket中有四个数据。

User1和user2一开始都是为空

2.定义开始地点四个,终点4个

3.定义数组c1.c2,daaress.uname1,pass1.uname1,uname2

4.写个选择页面,共有5个页面。

5.如果用户选择1购票,下面for循环控制路线。

如果用户选择2注册,把输入的数据存入数组

如果用户选择3查询,建立for循环

如果用户选择4购票,用if判断语句判断用户输入的是否在数组里

如果用户选择5购票.用exit退出

流程图:

实现过程:

定义结构,再加whileif等循环实现

代码

#include<

stdio.h>

Structticket/*定义火车票为结构体*/

{

char*starName;

char*endName;

intnumber;

};

structuser/*定义用户为结构体*/

char*userName;

char*passWord;

structtickettickets[4];

/*火车票里有4个对象*/

structuseruser1={NULL,NULL};

/*用户初始为空*/

structuseruser2={NULL,NULL};

intlq_index();

/*定义数组*/

voidgotolq_Index();

voidmain()

inti=0;

char*starNames[4]={"

"

"

/*4个起点*/

char*endNames[4]={"

/*4个终点*/

for(i=0;

i<

4;

i++)

{

tickets[i].starName=starNames[i];

tickets[i].endName=endNames[i];

tickets[i].number=rand()%21+30;

}

/*for(i=0;

printf("

%s-%snumber:

%d\n"

tickets[i].starName,tickets[i].endName,tickets[i].number);

}*/

printf("

\t**********欢迎使用火车票系统**********\n"

);

/*输出主页面*/

while(1==1)

if(lq_index()==5)

break;

}

intlq_index()

inti=0,j=0;

charyn;

charc1[20];

/*2个数组*/

charc2[20];

charaddress[20],uname1[20],pass1[20],uname2[20],pass2[20];

\n[1]购票[2]注册\n"

);

[3]查询[4]登录\n"

[5]退出\n"

请输入编号"

scanf("

%d"

&

i);

if(i==1){

输入目的地和出发地:

scanf("

%s%s"

c1,c2);

/*接受用户输入的数据*/

j=0;

for(i=0;

j++;

if(strcmp(tickets[i].starName,c1)==0&

&

strcmp(tickets[i].endName,c2)==0)/*判断是否有票*/

{

if(tickets[i].number>

0)

{

printf("

您的选择的线路%s-%s还剩%d票是否确定购买(y/n):

"

c1,c2,tickets[i].number);

scanf("

%c"

yn);

if(yn=='

y'

||yn=='

Y'

{

if(user2.userName!

=NULL)

{

tickets[i].number--;

printf("

恭喜您购票成功!

}else{

登录后才能购票!

}/*如果没登录显示用户登录*/

gotolq_Index();

/*选择路线*/

}

elseif(yn=='

n'

N'

{

else

printf("

输入有误!

\n"

i--;

j--;

continue;

return1;

}else

抱歉您的选择的线路%s-%s已无票出售!

/*如果无票就提示*/

gotolq_Index();

}

}

elseif(j==4)/*路线不存在提示*/

printf("

您的选择的线路%s-%s系统中不存在!

gotolq_Index();

return1;

}

elseif(i==2)

输入账号:

/*注册账号*/

%s"

uname1);

user1.userName=uname1;

输入密码:

pass1);

user1.passWord=pass1;

恭喜%s用户注册成功!

user1.userName);

gotolq_Index();

elseif(i==3)

输入要查询的地点:

/*查询车票*/

address);

始发站\t终点站\t票数\n"

i=0;

{

if(strcmp(tickets[i].starName,address)==0)

%s\t%s\t%d\n"

}else{

j++;

if(j==4)

未找到相应数据!

return1;

}elseif(i==4){

/*用户登录与已经注册的判断*/

uname2);

user2.userName=uname2;

pass2);

user2.passWord=pass2;

if(user1.userName!

if(strcmp(user1.userName,user2.userName)==0&

strcmp(user1.passWord,user2.passWord)==0)

欢迎%s用户使用本系统!

user2.userName);

}else{

user2.userName=NULL;

user2.passWord=NULL;

输入账号或者密码不一致!

请先注册用户!

/*不一致提示注册*/

}elseif(i==5){

欢迎再次使用本系统!

return5;

return1;

voidgotolq_Index()

printf("

任意键返回首页!

/返回*/

\n**************************************\n"

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

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

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

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