问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言编程 车票管理系统

发布网友 发布时间:2022-04-29 02:58

我来回答

1个回答

热心网友 时间:2022-06-29 09:04

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
# define size 10 struct t_tickets /* 定义结构体 */ {int number; /* 结构体中的申明部分 */ char begin [10]; char start[30]; char loadend[30]; float time; int people; int booked; } t[size]; FILE*fp; struct t_tickets t[size];

void save()
{
int i; if ((fp=fopen("ticket.text","w+"))==NULL)
{
printf("cannot open the file\n");
return;
}
for(i=0;i<size;i++)
if(fwrite(&t[i],sizeof(struct t_tickets),1,fp)!=1)
printf(" file write error\n");
fclose(fp);
}
void input()
{
int i;

printf("----------请录入班次信息----------\n");
for(i=0;i<size;i++)
{
scanf("%d %s %s %s %f %d %d",&t[i].number,t[i].begin, t[i].start,t[i].loadend,&t[i].time,&t[i].people,&t[i].booked);
save();} }
void output()

{
int i ;

fp=fopen("ticket.text","r");for(i=0;i<size;i++)
{
fread(&t[i],sizeof(struct t_tickets ),1,fp);printf("\n%-4d %-8s %-13s %-13s %-6.1f %-6d %4d\n",t[i].number,t[i].begin, t[i].start,t[i].loadend,t[i].time,t[i].people,t[i].booked);

}
fclose(fp);} void scan(){
int k;int number;
printf("请输入您想要查询的班次号:\n");
scanf("%d",&number);
fp=fopen("ticket.text","r");
for(k=0;k<size;k++)
{
fread(&t[k],sizeof(struct t_tickets),1,fp);
if(number==t[k].number)
{ printf("\n 班次 发车时间 起点站 终点站 行车时间 额定载量 已订票人数 \n");

printf("\n%-4d %-8s %-13s %-13s %-6.1f %-6d %4d\n",t[k].number,t[k].begin, t[k].start,t[k].loadend,t[k].time,t[k].people,t[k].booked);

break;
}
}
if(k>=size)
printf("对不起,没有您想要查询的班次,谢谢使用本系统\n");
fclose(fp);
} void check()
{
int i; char loadend[30];
printf("请输入你想要查询的终点站的名称:\n");
scanf("%s",loadend);
fp=fopen("ticket.text","r");
for(i=0;i<size;i++)
{
fread(&t[i],sizeof(struct t_tickets),1,fp);
if(strcmp(loadend,t[i].loadend)==0)
{
printf("\n 班次 发车时间 起点站 终点站 行车时间 额定载量 已订票人数 \n"); printf("\n%-4d %-8s %-13s %-13s %-6.1f %-6d %4d\n",t[i].number,t[i].begin, t[i].start,t[i].loadend,t[i].time,t[i].people,t[i].booked);
break;
}
}
if(i>=size)
printf("对不起,没有您想要查询的班次,谢谢使用本系统!\n");
fclose(fp);
} void book(){
int i;int number;int m;char loadend[30];int ticket=1;
if ((fp=fopen("ticket.text","r"))==NULL)
{
printf("not open the file\n");
return;
}
for(i=0;i<=1;i++)
fread(&t[i],sizeof(struct t_tickets),1,fp);
printf("\n请输入你想要到达的终点站:\n");
scanf("%s",loadend);
printf("到达此终点站的班次有:\n");
printf("\n 班次 发车时间 起点站 终点站 行车时间 额定载量 已订票人数 \n");
for(i=0;i<=1;i++)
if(strcmp(loadend,t[i].loadend)==0)
{
ticket=2;
printf("\n 班次 发车时间 起点站 终点站 行车时间 额定载量 已订票人数 \n");
printf("\n%-4d %-8s %-13s %-13s %-6.1f %-6d %4d\n",t[i].number,t[i].begin, t[i].start,t[i].loadend,t[i].time,t[i].people,t[i].booked);
}
for(i=0;i<=1;i++)
if(strcmp (loadend,t[i].loadend)==0)
if(t[i].booked<t[i].people)
{
ticket=3;

printf("请输入订票的张数:\n");
scanf("%d",&m);
for(i=0;i<=size;i++)
if(number=t[i].number); if ((fp=fopen("ticket.text","w"))==NULL)
{
printf("not open the file\n");
return;
}
{
t[i].booked=t[i].booked+m;
if ((fp=fopen("ticket.text","w"))==NULL)
{
printf("not open the file\n");
return;
}
for(i=0;i<=size;i++) fwrite(&t[i],sizeof(struct t_tickets),1,fp); fclose(fp);
printf(" 您订票成功!谢谢使用本次服务!\n"); }} if(ticket==1)
printf("\n 没有你查询的班次,请查询后在输入\n");
if(ticket==2)
printf("\n 你想要购买的票以售完,请购买下一班 \n"); fclose(fp); if ((fp=fopen("ticket.text","w"))==NULL)
{
printf("not open the file\n");
return;
} for(i=0;i<=size;i++)
fwrite(&t[i],sizeof(struct t_tickets),1,fp); fclose(fp);
} void rback(){
int number,i,m;if((fp=fopen("ticket.text","r"))==NULL)
{
printf("not open the file\n");
return;
}for(i=0;i<=1;i++)
fread(&t[i],sizeof(struct t_tickets),1,fp);
printf("请输入退票的班次:\n");
scanf("%d",&number);
printf("请输入退票的张数:\n");
scanf("%d",&m);
for(i=0;i<=size;i++)
if(number==t[i].number)
{
t[i].booked=t[i].booked-m;
printf("\n 您退票成功!,谢谢\n");}
fclose(fp); if ((fp=fopen("ticket.text","w"))==NULL)
{
printf("not open the file\n");
return;
}
for(i=0;i<=size;i++) fwrite(&t[i],sizeof(struct t_tickets),1,fp); fclose(fp);
}
void over()
{
printf("\n 谢谢您的使用,请按任意键结束!\n");
return;
}
void main(){
int b; printf(" 这里是车票管理系统,欢迎你的使用\n");
printf(" 袁宏杰 制作\n");
printf("\n******************************************\n");
printf(" ==== 0,录入班次信息\n");
printf(" ==== 1,浏览信息\n");
printf(" ==== 2,按班次查询\n");
printf(" ==== 3,按终点站查询\n");
printf(" ==== 4,预定车票\n");
printf(" ==== 5,退票 \n");
printf(" ==== 6,退出程序\n");
printf("\n******************************************\n");

do{
printf("-----选择主菜单功能(0~6\n");
scanf("%d",&b);
switch (b)
{
case 0: input(); break;
case 1: output(); break;
case 2: scan(); break;
case 3: check(); break;
case 4: book(); break;
case 5: rback(); break;
case 6: over(); break;
default: printf(" enter error!\n");
}}while(1);}追问能采用问题中所包含的源程序吗???而且那个系统好有问题,用不了。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
“晚来天欲雪,能饮一杯无?”是什么意思_出处及原文翻译_学习力 胸肌中部怎么练 血沉高是怎么回事,怎样才能降低啊! 中海锦江城多久交房 “QMS”作为“质量管理体系”的英文缩写,其背后理论及应用如何?_百度... 我用QQ登的快手绑定了一个电话号码,电话号码不用了,现在怎么能登得进去... 桂林银行白金客户条件 桂林银行最高等级卡 iQOO 11系列曝光,预计年底正式发布! vivo X90先别买?iQOO 11系列配置堪称豪华 &lt;C语言程序设计&gt;这本书在深圳哪里有卖 单片机用C语言的基础 在深圳寻找c语言高手帮忙编程!需要实现的是小车的巡线和物品的抓取!并需要循环!有重酬 深圳学电脑C语言和编程 深圳锦绣江南在哪培训C语言编程???有知道的朋友告诉我一声,谢谢 广州、深圳计算机C语言软件开发工作好找吗? 请问谁知道,深圳有什么地方可以上C语言计算机编程的课? 大概1个月这样的课。然后不会太贵的。 win10电脑windows日志中应用程序和系统记录是怎么来的,不操作也会不断出现吗 英语中的名词所有格形式中那个分隔符在excel 中怎么插入呢 恩施今年社保最低交多少钱 湖北社保最低缴费标准是多少钱一个月 武汉和恩施的社保基数是一样的么? 是不是拿到网络工程师资格证就是中级工程师了? 中级网络工程师 互联网应用工程师技术水平 证书也已算作中级职称吗 微信小程序金山文档日期怎么显示0 中级网络工程师是什么概念 为什么微信小程序获取当前时间时定义var util = require(&#39;../../... 微信小程序组件之picker 怎么获得当前的时间 如何增强手机wifi信号?焊天线? 深圳新华书店有《C语言程序》卖吗? 我被深圳职业技术学院录取,专业是计算机应用技术~~听人说这专业不太好~在深圳这大专这专业就业怎么样? AT89C51单片机C语言编程16*16点阵程序 电视机24寸是多大 电视机24小时都开着多久会坏 现在电视机一般24小时能耗电多少? 24寸电视机推荐哪个牌子比较好 我在闲鱼买了货,收到确认,不能用,退回去了给卖家,卖家不退款,怎么办? 24英寸电视机16:9宽屏长宽高各多少厘米? 电视机尺寸怎么算如题,比如一台24寸液 闲鱼上已经退还货物,卖家拒绝退款怎么办? 电视机24小时开机能用多少度电? 咸鱼退货退款后卖家签收后找理由不退款小二怎么判 闲鱼上不满意的物品给卖家寄回只要卖家签收就能退款吗? 闲鱼上退货退款卖家收到货不退款怎么办 - 信息提示 请问这玉髓是天然的吗? 以翅膀为话题的作文600字 以翅膀为话题的作文 天然玉髓是什么东西