c语言航班管理系统代码.docx
- 文档编号:7232385
- 上传时间:2023-01-22
- 格式:DOCX
- 页数:10
- 大小:17.94KB
c语言航班管理系统代码.docx
《c语言航班管理系统代码.docx》由会员分享,可在线阅读,更多相关《c语言航班管理系统代码.docx(10页珍藏版)》请在冰豆网上搜索。
c语言航班管理系统代码
c语言航班管理系统代码
#include
#include
#include
#define N 10000
struct air
{
int num;
char start[20];
char over[20];
char time[10];
int count;
}s[N];
int i;
int m=0;
#define PRINT "%-dsssd\n",s.num,s.start,s.over,s.time,s.count
void input();
void print();
void save();
void read();
void search();
void shanchu();
void dingpiao();
void tuipiao();
void xiugai();
void main()
{
int j;
printf(" ★---您好,欢迎进入中国民航管理系统!
---★\n");
printf
("================================================================================\n");
do
{
printf(" -------- ☆ 1.输入航班信息 ☆-------- \n\n"
" -------- ☆ 2.浏览航班信息 ☆-------- \n\n"
" -------- ☆ 3.修改航班信息 ☆-------- \n\n"
" -------- ☆ 4.查找航班信息 ☆-------- \n\n"
" -------- ☆ 5.删除航班信息 ☆-------- \n\n"
" -------- ☆ 6.订票信息 ☆-------- \n\n"
" -------- ☆ 7.退票信息 ☆-------- \n\n"
" -------- ☆ 0.退出 ☆-------- \n\n");
printf
("================================================================================\n");
printf("请在0-7中选择以回车键结束:
\n\n");
scanf("%d",&j);
switch(j)
{
case 1:
input();
break;
case 2:
print();
break;
case 3:
xiugai();
break;
case 4:
search();
break;
case 5:
shanchu();
break;
case 6:
dingpiao();
break;
case 7:
tuipiao();
break;
case 0:
;
break;
}
}while(j!
=0);
printf("谢谢使用,再见!
\n");
}
void input()
{
char f[]="2008china";
int y;
printf("请输入密码并以回车键结束:
\n\n");
scanf("%s",f);
if(strcmp(f,"2008china")==0)
{
printf("请依次输入航班信息(机票数位0结束输入):
\n\n"
"完成输入信息请键入w以回车键结束\n\n");
printf("--------------------------------------------------------------------------\n");
for(i=0;i { printf("请输入航班号: \n"); scanf("%d",&s.num); printf("请输入起始站: \n"); scanf("%s",s.start); printf("请输入终点站: \n"); scanf("%s",s.over); printf("请输入时间: \n"); scanf("%s",s.time); printf("请输入机票数: \n",m); scanf("%d",&s.count); m ; printf("第%d个信息已经输完是否继续? 按任意键继续,按 0结束",m); scanf("%d",&y); if(y==0) { save(); print(); break; } } } else printf("输入密码错误! 请检查您的密码是否正确! 谢谢! 再见! \n\n"); } void save() { FILE *fp,*fp1; if((fp=fopen("chen.dat","wb"))==NULL) { printf("创建文件失败! \n\n"); getchar(); return; } if((fp1=fopen("hao.dat","wb"))==NULL) { printf("创建文件失败! \n\n"); getchar(); return; } for(i=0;i if(fwrite(&s,sizeof(struct air),1,fp)==0) printf("向文件输入数据失败! \n\n"); (0) ∙回复 ∙1楼 ∙2006-07-2822: 28 ∙举报 |个人企业举报垃圾信息举报 ∙ ∙ ∙60.20.134.* ∙ fprintf(fp1,"%d",m); fclose(fp); fclose(fp1); } void read() { FILE *fp,*fp1; if((fp=fopen("chen.dat","rb"))==NULL) { printf("出错,请检查文件是否存在,按任意键返回住菜单"); getchar(); } if((fp1=fopen("hao.dat","rb"))==NULL) { printf("创建文件失败! \n\n"); getchar(); return; } fscanf(fp1,"%d",&m); fclose(fp1); for(i=0;i { fread(&s,sizeof(air),1,fp); } fclose(fp); } void print() { char w[10]; read(); printf("航班号 起始站 终点站 时间 机票数\n"); for(i=0;i { printf(PRINT); } printf("请按任意键回车键结束返回上层菜单以: \n"); scanf("%s",w); } void search() { char name1[20]; char name2[20]; char ii[10]; int n,no; do { printf("请选择查找方式: \n\n"); printf("1.按航班号查找\n\n" "2.按终点站查找\n\n" "3.按航线查找\n\n" "0.返回\n\n"); printf("请在0-3中选择: \n\n" "按其他键以回车键结束返回主菜单: \n\n"); scanf("%d",&n); if(n==0) break; switch(n) { case 1: printf("请输入航班号: \n"); scanf("%d",&no); break; case 2: printf("请输入终点站名称: \n"); scanf("%s",name2); break; case 3: printf("请输入起始站名称: \n"); scanf("%s",name1); printf("请输入终点站名称: \n"); scanf("%s",name2); break; } read(); for(i=0;i { if(strcmp(s.over,name1)==0||strcmp(s.over,name2)==0) { printf("\n查找航班信息成功! \n"); printf("航班号 起始站 终点站 时间 机票数\n"); printf(PRINT); break; } if(s.num==no) { printf("\n查找航班信息成功! \n"); printf("航班号 起始站 终点站 时间 机票数\n"); printf(PRINT); break; } } no=0;//将航班号赋值为0 printf("没有您需要的信息或查找完毕: \n\n" "是否继续查找? 请键入yes或no以回车键结束\n"); scanf("%s",ii); }while(strcmp(ii,"yes")==0); } void shanchu() { char name1[20]; char name2[20]; char ii[10]; char f[]="2008china"; int no,n; printf("请输入密码并以回车键结束: \n\n"); scanf("%s",f);//读取密码 if(strcmp(f,"2008china")==0) { do { printf("请选择删除以方式回车键结束: \n\n"); printf("*1.按航班号删除\n\n" "*2.按航线删除\n\n" "*0.返回\n\n"); printf("请在0-2中选择以回车键结束: \n"); scanf("%d",&n); if(n==0) break; switch(n) { case 1: printf("请输入航班号: \n"); scanf("%d",&no); read(); break; case 2: printf("请输入起始站 名称: \n"); scanf("%s",name1); printf("请输入终点站名称: \n"); scanf("%s",name2); read(); break; } for(i=0;i { if(s.num==no||strcmp(s.start,name1)==0&&strcmp(s.over,name2)==0) { s=s[m-1]; m--; } } printf("查找完毕或没有这个信息\n\n"); printf("是否继续删除\n"); printf("请键入yes或no以回车键结束\n"); scanf("%s",ii); save(); //调用读取函数 if(! strcmp(ii,"yes")) / printf("请按任意键以回车键结束返回上层菜单: \n"); break; }while(n! =1&&n! =2&&n! =3&&n! =4&&n! =0); 回复 ∙2楼 ∙2006-07-2822: 28 ∙举报 |个人企业举报垃圾信息举报 ∙ ∙ ∙60.20.134.* ∙ } else printf("对不起密码错误! 您不是管理员,不能使用此项功能! 谢谢! 再见! \n\n"); } void dingpiao() { int n; char a[10]; do { search(); printf("请输入您要订的机票数以回车键结束: \n"); scanf("%d",&n); if(n<0) { printf("请输入有效的机票数! \n"); break; } if(s.count! =0&&s.count>=n) { s.count=s.count-n; save(); printf("订票成功! \n\n"); break; } if(s.count { printf("请输入有效的机票数: \n"); break; } printf("是否继续? 请输入yes或no以回车键结束: \n");//判断是否继续订票 scanf("%s",a); }while(! strcmp(a,"yes")); } void tuipiao() { int n; char a[10]; do { search(); printf("请输入您要退的机票数目: \n"); scanf("%d",&n); if(n<0) printf("请输入有效的机票数! \n"); s.count=s.count n; save(); printf("退票成功! \n\n"); printf("是否继续? 请键入yes或no以回车键结束: \n\n"); scanf("%s",a); }while(! strcmp(a,"yes")); getchar(); } void xiugai() { struct xiu { int no; char name1[20]; char name2[20]; char time[20]; int count; }x[1]; char j[10]; char f[]="2008china"; int n; printf("请输入密码并以回车键结束: \n\n"); scanf("%s",f); if(strcmp(f,"2008china")==0) { read();/ do { printf( "请选择修改方式: \n\n" "*1,按航班号修改: \n\n" "*2,按航线修改: \n\n"); printf("请在1---2中修改以回车键结束: \n\n"); scanf("%d",&n); switch(n) { case 1: printf("请输入航班号: \n"); scanf("%d",&x[0].no); break; case 2: printf("请输入起始站: \n"); scanf("%s",x[0].name1); printf("请输入终点站: \n"); scanf("%s",x[0].name2); break; } for(i=0;i { if(strcmp(s.over,x[0].name1)==0&&strcmp(s.over,x[0].name2)==0) { printf("航班号 起始站 终点站 时间 机票数\n"); printf(PRINT); break; } if(s.num==x[0].no) { printf("航班号 起始站 终点站 时间 机票数\n"); printf(PRINT); break; } } x[0].no=0; printf("请输入新航班号、起始站、终点站、时间(星期几)、机票数: \n"); scanf("%d%s%s%s%d",&x[0].no,x[0].name1,x[0].name2,x[0].time,&x[0].count); s.num=x[0].no; strcpy(s.start,x[0].name1); strcpy(s.over,x[0].name2); strcpy(s.time,x[0].time); s.count=x[0].count; save(); printf("是否继续? 请键入yes或no以回车键结束: \n\n"); scanf("%s",j); }while(strcmp(j,"yes")==0); } else printf("对不起密码错误! 您不是管理员,不能使用此项功能! 谢谢! 再见! \n\n"); } struct air { intnum; char start[20]; char over[20]; char time[10]; int count; } s[N];
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 航班 管理 系统 代码