当前位置: 首页 > news >正文

固始县网站建设培训上海十大网站建

固始县网站建设培训,上海十大网站建,wordpress zsqx,建设内网网站流程需求描述: 火车票订票系统以用户预定火车票的一系列流程为主线,将火车票车次详细信息进行显示、保存,同时提供火车的剩余票数,以供用户查询决定是否预订,当预订成功后,提供保存用户的订票信息的功能。由于…

需求描述:

火车票订票系统以用户预定火车票的一系列流程为主线,将火车票车次详细信息进行显示、保存,同时提供火车的剩余票数,以供用户查询决定是否预订,当预订成功后,提供保存用户的订票信息的功能。由于订票系统面向的人群主要分为两类:管理员和普通用户。他们对于该购票系统的需求不同,使用方法也不同,由此应该分成两个对象分别设计不同界面和用途该系统详细周到的操作流程满足了用户的需求,也提高了铁路工作人员的工作效率。

火车售票系统介绍:该系统分为管理员和用户两个角色:

管理员的功能包含: 

1、录入火车票信息                           
 2、显示火车票信息                           
 3、查询火车票信息                           
 4、修改火车票信息

用户(顾客)的功能包含:

1、火车票区间查询

2、查询已购票信息

该C语言程序主要用到了以下数据结构的知识点:

  1. 结构体(struct)

    • 用于定义火车票信息的结构体 train_infor,简称 train
    • 结构体包括火车车次、始发地、终点站、发车时间、到达时间、票价等信息。
  2. 数组

    • 使用一维数组 train info[10000] 保存所有的车次信息。
    • 使用二维数组 train users[100][100] 保存每个用户的购票信息。
  3. 字符串

    • 结构体中包含字符数组(如 numberstartend)用于存储车次、始发地、终点站。
    • 使用 strcmp 函数进行字符串比较,用于查询和修改车次信息。
  4. 多维数组

    • train users[100][100] 是一个二维数组,用于记录用户的购票信息,其中 users[no] 表示用户 no 的购票记录,users[no][vcs[no]] 用于表示用户 no 的第 vcs[no] 张车票。
  5. 循环结构

    • 使用 for 循环录入、显示和查询车次信息。
    • 使用 while 循环处理用户和管理员的选择输入,确保可以多次进行操作。
  6. 条件结构

    • 使用 if-else 判断条件,确保操作的正确性,例如判断是否有车次信息、用户是否有购票记录等。
    • 使用 switch-case 处理菜单选择,便于管理不同操作。
  7. 函数

    • 该程序定义了多个函数来实现不同功能,如录入火车票信息 (Traininfo)、显示火车票信息 (showtrain)、查询火车票信息 (searchtrain)、修改火车票信息 (Modify)、购票 (bookticket)、区间查询 (look_up)、保存用户购票信息 (SaveTraininfo)、管理员界面 (admin)、用户界面 (user) 。

运行效果截图:

管理员登录后录入车票信息:

管理员查询已添加的车票信息:

管理员单次查询车次:

管理员修改车次信息(中间都用英文状态下的空格):

用户登录查询或实现订票:

用户端查询车票:

用户端购票:

课设 源代码访问地址icon-default.png?t=N7T8https://docs.qq.com/doc/p/71239d69a76f56cf1521717ae6b22c27cf876f10

结构体定义:

//火车票信息模块 (以结构体实现)typedef struct train_infor
{char number[10];//火车车次char start[20];//始发地char end[20];//终点站int year1,month1,day1,h1,m1;//始发时间int year2,month2,day2,h2,m2;//到站时间int price;//票价 
}train;int cnum=0;//记录总共列车信息的数量
train info[10000];//以结构体类型的数组用来保存所有的车次信息;
train users[100][100];//二维数组用来保存用户信息,每一行可以用来表示一个用户的购票信息
int vcs[100]={0};//记录每一个用户自己账户的票数,初始为0 

 主函数:

int main()
{printf("提示:整个输入过程请严格按照格式,标点均为英文状态下输入!\n");printf("-------------请选择身份-------------\n");printf("| 1、管 理 员    |   2、用  户     |\n");printf("|           0、结束程序            |\n");printf("------------------------------------\n");//输入1表示进入管理员界面,2进入用户界面int choose1;while(~scanf("%d",&choose1))//记录选择的序号,多组测试{if(choose1==0)break;switch (choose1){case 1:admin();break;case 2:user();break;default :printf("请选择有效操作对应编号哦!\n");break;}printf("-------------请选择身份-------------\n");printf("| 1、管 理 员    |   2、用  户     |\n");printf("|           0、结束程序            |\n");printf("------------------------------------\n");}return 0;
}

用户函数:

//用户界面
void user()
{int no;printf("请输入你的用户编码:");scanf("%d",&no);//记录用户编码用来对应的保存其购票信息user_menu();int choose3;while(~scanf("%d",&choose3))//记录用户选择的操作;{switch(choose3){case 1:look_up(no);break;case 2:SaveTraininfo(no);break;case 0:return ;//输入0直接退出整个函数default :printf("请选择有效操作对应编号哦!\n");break ;}

 录入火车票信息:

//录入火车票信息(即添加模块)
void  Traininfo()
{int sum,i;printf("请输入要录入的列车信息条数:");scanf("%d",&sum);printf("请依次输入火车车次 始发地 终点站 始发时间(年/月/日 时:分) 到站时间(年/月/日 时:分) 票价 ;\n");printf("每输入一项数据后以空格结束,进行下一数据录入\n");for(i=cnum;i<cnum+sum;i++)/*录入信息从cnum开始录入信息,避免管理员先进行插入或添加、删除等操作后再来录入数据,发生覆盖;同时这样可以多次循环进行录入操作(在之前的信息下继续添加)*/ {scanf("%s %s %s %d/%d/%d %d:%d %d/%d/%d %d:%d %d",info[i].number,info[i].start,info[i].end,&info[i].year1,&info[i].month1,&info[i].day1,&info[i].h1,&info[i].m1,&info[i].year2,&info[i].month2,&info[i].day2,&info[i].h2,&info[i].m2,&info[i].price);} printf("录入成功!\n");cnum+=sum;return ;
}

修改火车票信息: 

//修改火车票信息
void Modify()
{int i;printf("请输入要修改的车次:");char ch[10];//记录要修改的车次scanf("%s",ch);//和查询车票一样先找到该列车所在的位置,然后对其进行修改for(i=0;i<cnum;i++){if(strcmp(ch,info[i].number)==0)//比较所有的列车信息一直到和输入的车次相同则找到并输出,字符串的比较要是用strcmp()函数;如果相等则为0{printf("该列车原信息:\n");printf("车次\t始发地\t终点站\t发车时间\t\t到达时间\t\t票价\n");printf("%s\t%s\t%s\t%d/%02d/%02d %02d:%02d\t%d/%02d/%02d %02d:%02d\t%d\n",info[i].number,info[i].start,info[i].end,info[i].year1,info[i].month1,info[i].day1,info[i].h1,info[i].m1,info[i].year2,info[i].month2,info[i].day2,info[i].h2,info[i].m2,info[i].price);printf("请输入新的数据:\n");printf("车次\t始发地\t终点站\t发车时间\t\t到达时间\t\t票价\n");scanf("%s %s %s %d/%d/%d %d:%d %d/%d/%d %d:%d %d",info[i].number,info[i].start,info[i].end,&info[i].year1,&info[i].month1,&info[i].day1,&info[i].h1,&info[i].m1,&info[i].year2,&info[i].month2,&info[i].day2,&info[i].h2,&info[i].m2,&info[i].price);printf("修改成功!\n");return ;//修改后直接结束无需再进行}}printf("无此列车信息!\n");//如果找到前面就结束则不会运行到此处;所以运行到此处只能是没有找到;return ;
}

用户订票函数:

//用户订票模块 
void bookticket(int no)
{int i;printf("请输入你要购票的车次:\n");char che[10];scanf("%s",che);for(i=0;i<cnum;i++){if(strcmp(che,info[i].number)==0){users[no][vcs[no]]=info[i];vcs[no]++;//该用户的购票数加一;printf("购票成功!\n");return ;}}printf("无此列车信息!\n");return ;

http://www.yayakq.cn/news/133476/

相关文章:

  • 网站建设业务怎么跑怎么呢搜到自己建设的网站
  • 网站后台管理系统 静态页面wordpress类目权限
  • worldpress 建站昆明建设招聘信息网站
  • 公明网站建设怎么做怎样利用网站做推广
  • 小学英语教师做应用相关网站wordpress php转html
  • 崇仁网站建设推广费用哪些网站做面试题
  • 专业网站建设公司地址中国建设银行郑州分行网站
  • 专业网站设计公司哪家好网站绑定多个域名
  • 虚拟主机网站建设实训总结如何做网站关键词优化
  • 网站优化反馈机制 seoseo工作流程图
  • 什么事三合一网站网站建设与网页设计 难学吗
  • 手机网站菜单设计加强农业网站建设
  • 达州网站建设哪家好项目管理软件开发案例
  • 网站建设有哪些问题h5怎么生成二维码
  • 上海营销型网站制作seo做的比较好的公司
  • 网站开发答辩难点wordpress 跳转特效
  • 海安做网站的公司新闻类网站模板
  • 河池市住房城乡建设网站网站模版制作教程
  • 企业做网站的意义网页设计代码单元格内容怎么居中
  • 万户网站后台控制中心容桂网站制作咨询
  • 绍兴做网站建设济宁住房和城乡建设局网站首页
  • 网站建设饣首选金手指购物网页模板
  • 在网站建设中logo是指什么云网站制作的流程
  • 郑州哪有做网站的汉狮网站建设汕头
  • 网站右侧浮动广告代码视频网站怎么做采集
  • 仓山福州网站建设cc网站域名注册
  • 山东小语种网站建设网站的通知栏一般用什么控件做
  • 一流的中小型网站建设市场营销策划案例经典大全
  • 洮南网站建设哪家专业深圳市住建工程交易
  • 什么网站都能打开的浏览器怎样免费建立网站