用C语言写一个模拟火车票管理系统。

#includestdio.h

#includestring.h

#includestdlib.h

#includetime.h

#includeconio.h

#define N 1000

typedef struct TICKET

{

char num[10];

char hour[3];

char min[3];

char from[10];

char to[10];

float hours;

int max;

int now;

}CLASS;

int class_num=0;

CLASS records[N];

int system_time();

void NewMessage();

void ShowTable1();

void ShowTable2(int i);

void Display();

void add();

void save();

void load();

void search();

void change();

void quit();

void Ticketorder();

void Ticketdelete();

int menu_select();

int whether(int);

void find(char s1[],char s2[]);

void deletemessage();

int findnum(char s1[]);

void get(int,int);

char *menu[]={"*****************欢迎使用车票管理系统*****************",

"\n*******************MENU功能菜单盯神灶***********************",

"\n 1. 录入班次凯扮 ",

"\n 2. 显示所有班次 ",

"\n 3. 查询班次 ",

"\n 4. 增加班次 ",

"\n 5. 售票 "瞎高,

"\n 6. 退票 ",

"\n 7. 修改班次 ",

"\n 8. 删除班次 ",

"\n 9. 退出 "};

/**主函数**/

void main()

{

system("cls");

while(1)

{

switch(menu_select())

{

case 1: NewMessage();break;

case 2: Display();break;

case 3: search();break;

case 4: add();break;

case 5: Ticketorder();break;

case 6: Ticketdelete();break;

case 7: change();break;

case 8: deletemessage();break;

case 9: quit();break;

}

}

}

/**菜单函数**/

int menu_select()

{

char s[5];

int c,i;

system("cls");

for(i=0;i11;i++)

{

printf("%s",menu[i])) ;

}

i=0;

printf("\n");

printf("******************************************************");

printf("\n请选择(1-9):");

scanf("%s",s);

c=atoi(s);

while(i0||i9)

{

printf("\n");

printf("******************************************************");

printf("\n请选择(1-9):");

scanf("%s",s);

c=atoi(s);

}

return c;

}

void NewMessage()

{

int i=0,j=5,h;

char s[5];

FILE *fp;

system("cls");

if((fp=fopen("d:number.dat","rb"))!=NULL)

{

printf("车票信息已经存在请选择增加功能!\n");

printf("任意输入则返回菜单\n");

scanf("%s",s);

i=1; //通过是1

}

if(i==0)

{

system("cls");

printf("请输入要录入班次总数:\n");

scanf("%d",class_num);

system("cls");

for(i=0;iclass_num;i++)

{

system("cls");

printf("请输入第%d个班次信息:\n",i+1);

h=-1;

for(;h!=i;)

{

printf("请输入班次:");

scanf("%s",records[i].num);

for(h=0;hi;h++)

if(strcmp(records[h].num,records[i].num)==0)

//判断字符串比较是否相等,, 待比较的字符串

{

printf("输入错误!该班次已存在!\n");

break;

}

}

get(i,j);

j=5;

}

save();

}

}

void Display() //显示所有函数

{

int i,j;

system("cls"); //刷屏

load(); // 调用按班次查询函数

ShowTable1(); //线框调用1,,,不用每次输

for(i=0,j=0;iclass_num;i++,j+=2) /////按班次顺序输出

{

printf("\n|----------|----------|----------|----------|--------|--------|--------|\n");

if(whether(i))

printf("|%10s|%5s:%-4s|%10s|%10s|%8.1f|%8d|%8d|",records[i].num,records[i].hour,

records[i].min, records[i].from,records[i].to,records[i].hours,

records[i].max,records[i].now);

else

printf("|%10s| 已发车 |%10s|%10s|%8.1f|%8d|%8d|",records[i].num,

records[i].from,records[i].to,records[i].hours,records[i].max,records[i].now);

}

ShowTable2(j); //线框调用2

printf("\n按任意键继续....\n");

getch(); /////从控制台读取一个字符,但不显示在屏幕上

}

/**打印表头**/

void ShowTable1()

{

int i=2;

system("cls");

printf("**************************车票信息系统**********************************\n");

printf("\n|----------|----------|----------|----------|--------|--------|--------|\n");

printf("\n| 班次 | 发车时间 | 起点站 | 终点站 |行车时间|额定载量| 已售票 |\n");

}

void ShowTable2(int i)

{

printf("\n|----------|----------|----------|----------|--------|--------|--------|\n");

}

void search()

{

int i;

char s1[10]={'\0'},s2[10]={'\0'};

system("cls");

printf("1. 按班次查询\n")

printf("2. 按终点站查询\n");

printf("3. 退出\n");

printf("请选择(1-3):\n");

scanf("%d",i);

load();

switch(i)

{

case 1: printf("请输入要查询的班次:");

scanf("%s",s1);

find(s1,s2);

break;

case 2: printf("请输入要查询终点站:");

scanf("%s",s2);

find(s1,s2);

break;

case 3: break;

default : printf("输入错误!\n");

break;

}

printf("按任意键继续....\n");

getch();

}

void find(char s1[],char s2[])

{

int i,h=0,m;

ShowTable1();

if(s2[0]=='\0')

m=1;

else m=0;

for(i=0;iclass_num;i++)

if(strcmp(s1,records[i].num)==0||strcmp(s2,records[i].to)==0)

{

printf("\n|----------|----------|----------|----------|--------|--------|--------|\n");

printf("|%10s|%5s:%-4s|%10s|%10s|%8.1f|%8d|%8d|",records[i].num,records[i].hour,records[i].min,

records[i].from,records[i].to,records[i].hours,records[i].max,records[i].now);

h+=1;

if(m==1)

break;

}

ShowTable2(h);

if(h==0)

printf("要查找的班次不存在!\n");

}

/**增加函数**/

void add()

{

int i,j=5;

load();

system("cls");

printf("1. 增加班次");

printf("2. 返回\n");

printf("请选择(1-2)\n");

scanf("%d",i);

if(i==1)

{

system("cls"); //刷屏

printf("1. 请输入要增加的班次:");

scanf("%s",records[class_num].num);

for(i=0;iclass_num;i++)

if(strcmp(records[class_num].num,records[i].num)==0)

//判断字符串比较是否相等,待比较的字符串,判断车次没重复

{

printf("输入错误!\n");

getch(); /////从控制台读取一个字符,但不显示在屏幕上

break;

}

if(i==class_num)

{

get(i,j); ////修改及增加班次*

class_num++; ///使班次数加1

save(); //调用保存函数

}

}

}

/**售票函数**/

void Ticketorder() //*售票函数

{

int i;

char num[10];

system("cls"); //刷屏

printf("1. 售票\n");

printf("2. 返回\n");

printf("请选择(1-2):\n");

scanf("%d",i);

if(i==1)

{

load(); // 加载函数

search(); //查找函数

printf("请输入要订票的班次(若无请输入0):");

scanf("%s",num);

for(i=0;iclass_num;i++)

if(strcmp(num,records[i].num)==0)//判断字符串比较是否相等,, 待比较的字符串

if(records[i].maxrecords[i].nowwhether(i)==1)

//判断时间是否超出函数并且没超出最大客量

{

records[i].now++; ///使已售票加1

printf("通向%s班次为%s的票订票成功!\n",records[i].to,records[i].num);

save(); //调用保存函数

getch(); /////从控制台读取一个字符,但不显示在屏幕上

break;

}

else

{

printf("该班次已满或已发出!\n");

getch(); /////从控制台读取一个字符,但不显示在屏幕上

}

}

}

/**退票函数**/

void Ticketdelete() //删除函数*

{

int i;

char num[10];

system("cls"); //刷屏

printf("1. 退票\n");

printf("2. 返回\n");

printf("请选择(1-2)\n:");

scanf("%d",i);

if(i==1)

{

system("cls"); //刷屏

load(); // 调用按班次查询函数

printf("请输入要退票的班次:\n");

scanf("%s",num);

i=findnum(num); //调用班次查询函数

if(strcmp(num,records[i].num)==0) //判断字符串比较是否相等 待比较的字符串

if(whether(i)) //判断时间是否超出函数***

{

printf("确定(Y/N)?");

scanf("%s",num);

if(num[0]=='y'||num[0]=='Y')

{

records[i].now--; //使已售票减1

printf("退票成功!\n");

save(); //调用保存函数

getch(); //从控制台读取一个字符,但不显示在屏幕上

}

}

else

{

printf("该班车已发出,无法退票!\n");

getch(); /////从控制台读取一个字符,但不显示在屏幕上

}

if(i==class_num)

{ printf("输入错误!\n");

getch(); /////从控制台读取一个字符,但不显示在屏幕上

}

}

}

字数超了。。。。

怎么制作网上买票的凭证模板

以下是一个简单的步骤:

1、打开设计软件,例如Photoshop、Illustrator等。

2、设计凭证的尺寸和页面布局。闭此可以参考一些网上购票凭证的样式和布局,根据具体需求设计。

3、轿胡迅添加公司、产品名称、日期、订单号、支付金额等信息,以便用户核对。

4、插做滚入相关图标、图片、背景等设计元素,使凭证具有美观性和辨识度。

5、保存为模板格式,以备后续使用。

谁能帮我制作一张火车票图片啊?我只要图片就可以了

网页链接其实可以做火车票图片的,网页链接只需要photoshop合成就好了网页链接,一般新手不好上手,你可以去搜狗搜索中搜索“P一张核败洞火车票或高铁票枯局图片生成器”网页链接,你会看到一个爱客匠的文章!祝改枯你成功!网页链接

智行火车票12306有人工服务吗

有。

智行人工客服:021-60420000

智行火车票是一款收取费用的自动查询预订火车票的软件。该软件可以直接在12306上乱渗亮订票,可以查询、预定和购买。

还对12306购票流程进行大量优化,使用户购票更加快捷。软件还额外提供了智能查询和火车票监控功能。

这喊清款个人工作室制哗宽作的手机购票软件还是相当不错的,直接在12306上订票,可以查询、预定和购买,市场上评价非常不错。它还对12306购票流程进行大量优化,使用户购票更加快捷。软件还额外提供了智能查询和火车票监控功能,让你第一时间知道铁道部放票信息。目前这两个功能已经成为最受用户欢迎的部分。