火车票订票系统

文章迁移至:火车票订票系统 - 码到城攻火车票订票系统https://www.codecomeon.com/posts/31/

此为第一次课程设计,和大家分享,对我来说,是这开始也是结束:开始走上不归路,结束不属于自己的:

直接上代码:说明见注释:

/*火车订票系统*/
/*头文件*/
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<iostream.h>
#include<process.h>
#include<conio.h>
#include<iomanip.h>
#include<malloc.h>
#include<time.h>

#define SIZE 10                 /*定义SIZE为十辆车次信息*/
#define A 5                     /*定义A为每辆车次经过的主要大站*/

/*乘客信息结构体*/
typedef struct man
{
	char name[20];              /*姓名*/
	char phone_num[20];         /*电话号码*/
	char  idcard[20];           /*身份证号码*/
	int	 booknums;              /*订票数量*/
	char book_num[50];          /*订单号*/
	struct man *next;           /*指向下一乘客结点*/
}man,*pman,*manlinklist;        /*乘客信息链表*/
manlinklist z;                  /*定义全局变量*/


/*剩余火车票信息信息结构体*/
typedef struct tickets
{
	int discount;                 /*打折*/
	int box_num;                  /*车厢号*/
	int seat_num;                 /*座位号*/
	struct tickets *next;         /*指向下一张车票结点*/
}ticket,*pticket,*ticketlinklist; /*剩余车票信息链表*/
ticketlinklist g;                 /*定义全局变量*/


/*火车站点结构体*/
typedef struct station
{
	int sta_num;                   /*站次*/
	char staname[20];              /*站名*/
	char arrivetime[20];           /*到站时间*/
	char takeofftime[20];          /*开车时间*/
	char time[30];                 /*从起点到次中间站的时间*/
}station1;                     


/*火车信息结构体*/
struct train
{
	char train_num[50];            /*车次编号*/
	char start[20];                /*出发站*/
	char start_time[10];           /*出发时间*/
	char end[20];                  /*到达站*/
	char end_time[10];             /*到达时间*/
	char mainstation[100];         /*经过主要大站*/
	char boxs[60];                 /*车厢数*/
	char seats[100];               /*每节车厢座位数*/
	char price[20];                /*票价*/
	station1 station2[100];        /*嵌套站点结构体数组*/
}train[SIZE];                      /*定义全局结构体数组(顺序表),包含SIZE个车次信息*/


/*订票人注册信息结构体*/
typedef struct registers
{
	char username[20];            /*用户名*/
	char password[20];            /*密码*/
	struct registers *next;       /*指向下一个订票人注册信息的结点*/
}lregisters,*pregisters,*linklistregisters;
linklistregisters F;              /*定义全局变量*/


/*各类函数声明*/
//******************************************************************
//******************************************************************
void prints();                        /*菜单打印*/
int Initicket(ticketlinklist *h);     /*初始化剩余车票信息链表*/
int Initman();                        /*初始化乘客信息链表*/
int Initregisters(linklistregisters *head);/*初始化订票人注册信息链表*/
void registers();                     /*注册*/
void check();                         /*用户验证*/
char Continue();                      /*询问是否继续函数*/
bool Check(char pas[6]);              /*密码验证函数*/
void InsertMessaage();                /*班次信息录入*/
void ShowMessage();                   /*查看列车信息函数*/	
void SearchByNumber();                /*按车次编号查找*/
void SearchBystart();                 /*按起点站查找*/
void SearchByend();                   /*按终点站查找*/
void SearchMenu();                    /*车票信息查询*/
void findfree();                      /*查询剩余票信息*/
void times();                         /*调用时间函数*/
void Booking();                       /*订票*/
void Deleteticket();                  /*退票*/
//******************************************************************
//******************************************************************


请在原文查看

评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值