?? 427.cpp
字號(hào):
#include "info.h"
void cover1()
{ char line[]={"程序正在退出 請(qǐng)耐心等待..."};
char bar[]={"...."};
char tishi[]={"歡迎下次使用"};
int k=0;
for(i=0;i<11;i++)
{ system("cls");
for(j=0;j<8;j++)
printf("\n");
printf("\t\t\t ");
for(j=0;j<i;j++)
printf("■");
for(j=10;j>i;j--)
printf("□");
printf("\n\t\t\t %s",line);
printf("\n\t\t\t\t%d",10*i);
printf("%% Loading");
for(j=0;j<k;j++)
printf("%c",bar[j]);
k++;
printf("\n\n\n\t\t\t\t%s\n\t\t\t",tishi);
for(j=0;j<=14;j++)
printf("─");
printf("\n\n\n\n\t\t\t");
printf(" 廣東工業(yè)大學(xué)龍洞校區(qū)\n\t\t\t");
for(j=0;j<=14;j++)
printf("─");
printf("\n\t\t\t 學(xué)院:經(jīng)濟(jì)管理學(xué)院\n\t\t\t 班級(jí):05級(jí)信息管理5班\n\t\t\t 姓名:陳展?jié)齖n\t\t\t 學(xué)號(hào):3105005846");
if(k>4)
k=0;
for(j=0;j<70000000;j++);/*延時(shí)效果*/
}
}
void cover()
{
char line[]={"程序讀取中 請(qǐng)耐心等待..."};
char bar[]={"...."};
int i,j,k=0,x=0,y=0;
for(i=1;i<=10;)
{
system("cls");
for(j=0;j<9;j++) /*改變行坐標(biāo)*/
cout<<endl;
for(j=0;j<(80-strlen(line))/2;j++) /*改變列坐標(biāo)*/
cout<<" ";
for(j=1;j<=i;j++) /*進(jìn)度顯示器*/
cout<<"■";
for(x=10;x>i;x--)
cout<<"□";
if(k==4)
i++;
cout<<endl;
for(j=0;j<(75-strlen(line))/2;j++) /*行坐標(biāo)定位*/
cout<<" ";
cout<<line; /*輸出線(xiàn)條*/
cout<<endl;
for(j=0;j<(65-strlen(bar))/2;j++)
cout<<" ";
cout<<(i-1)*10<<"% Loading";
cout.write(bar,k);
cout<<endl;
for(j=0;j<10;j++)
{printf("\n");
if(j==4)
printf("\t\t\t 版權(quán)所有,翻版必究");
}
for(j=0;j<22;j++)
printf(" ");
printf("程序設(shè)計(jì):2005級(jí)信管五班:陳展?jié)齖n");
for(j=0;j<21;j++)
cout<<" ";
for(j=0;j<=16;j++)
cout<<"─";
cout<<endl;
for(j=0;j<27;j++)
printf(" ");
printf("我的學(xué)號(hào)為:3105005846");
for(j=0;j<10000000;j++);/*延時(shí)效果*/
k++;
if(k>4)
k=0;
}
}
void save()/*保存航班信息*/
{
FILE *fp,*fp1;/*定義文件指針*/
if((fp=fopen("flight.text","wb"))==NULL)/*打開(kāi)文件并判斷是否出錯(cuò)*/
{
printf("創(chuàng)建文件失敗!\n\n");/*打印出錯(cuò)提示*/
getch();
}
if((fp1=fopen("flight_count.text","wb"))==NULL)/*打開(kāi)文件并判斷是否出錯(cuò)*/
{
printf("創(chuàng)建文件失敗!\n\n");/*打印出錯(cuò)提示*/
getch();
}
for(i=0;i<m;i++)
if(fwrite(&f[i],sizeof(struct Flight),1,fp)==0)/*向文件寫(xiě)入數(shù)據(jù),并判斷是否出錯(cuò)*/
printf("向文件輸入數(shù)據(jù)失敗!\n\n");
fprintf(fp1,"%d",m);
fclose(fp);/*關(guān)閉文件*/
fclose(fp1);/*關(guān)閉文件*/
}
void save2()
{
FILE *fp3,*fp4;/*定義文件指針*/
if((fp3=fopen("customer.text","wb"))==NULL)/*打開(kāi)文件并判斷是否出錯(cuò)*/
{
printf("創(chuàng)建文件失敗!\n\n");/*打印出錯(cuò)提示*/
getch();
}
if((fp4=fopen("customer_count.text","wb"))==NULL)/*打開(kāi)文件并判斷是否出錯(cuò) */
{
printf("創(chuàng)建文件失敗!\n\n");/*打印出錯(cuò)提示*/
getch();
}
for(j=0;j<n;j++)
if(fwrite(&c[j],sizeof(struct Customer),1,fp3)==0)/*向文件寫(xiě)入數(shù)據(jù),并判斷是否出錯(cuò)*/
printf("向文件輸入數(shù)據(jù)失敗!\n\n");
fprintf(fp4,"%d",n);
fclose(fp3);/*關(guān)閉文件*/
fclose(fp4);/*關(guān)閉文件*/
}
void read()
{
FILE *fp,*fp1;/*定義文件指針*/
if((fp=fopen("flight.text","rb"))==NULL)/*打開(kāi)文件,并判斷是否出錯(cuò)*/
{
printf("出錯(cuò),請(qǐng)檢查文件是否存在 ");/*打印出錯(cuò)提示*/
getchar();
}
if((fp1=fopen("flight_count.text","rb"))==NULL)/*打開(kāi)文件并判斷是否出錯(cuò) */
{
printf(" 創(chuàng)建文件失敗 按任意鍵返回住菜單\n\n");/*打印出錯(cuò)提示*/
getchar();
}
fscanf(fp1,"%d",&m);
fclose(fp1);/*關(guān)閉文件*/
for(i=0;i<m;i++)
{
fread(&f[i],sizeof(struct Flight),1,fp);/*從文件中讀取信息*/
}
fclose(fp);/*關(guān)閉文件*/
}
/*從文件讀取客戶(hù)信息模塊*/
void read2()
{
FILE *fp3,*fp4;/*定義文件指針*/
if((fp3=fopen("customer.text","rb"))==NULL)/*打開(kāi)文件,并判斷是否出錯(cuò)*/
{
printf("出錯(cuò),請(qǐng)檢查文件是否存在 ");/*打印出錯(cuò)提示*/
getchar();
}
if((fp4=fopen("customer_count.text","rb"))==NULL)/*打開(kāi)文件并判斷是否出錯(cuò)*/
{
printf(" 打開(kāi)文件失敗 按任意鍵返回住菜單\n\n");/*打印出錯(cuò)提示*/
getchar();
}
fscanf(fp4,"%d",&n);
fclose(fp4);/*關(guān)閉文件*/
for(j=0;j<n;j++)
{
fread(&c[j],sizeof(struct Customer),1,fp3);/*從文件中讀取信息*/
}
fclose(fp3);/*關(guān)閉文件*/
}
int menu() /*總菜單入口*/
{int id;
do{system("cls");
printf("\n ~歡迎來(lái)到航運(yùn)訂票系統(tǒng)~\n\n");
printf(" _____________________________________________________________________\n");
printf(" │1.航線(xiàn)管理 │ 2.訂票辦理 │ 3.退或補(bǔ)票 │ 4.乘客管理 │ 5.退出系統(tǒng)│\n");
printf(" │___________________________________________________________________│\n");
printf("\n 你可以有(1~5)種選擇:");
scanf("%d",&id);
}while(id>5||id<1);
return id;
}
void add_air() /*增回航線(xiàn)*/
{int add_m;
system("cls");
printf(" ----------------------------------------\n\n");
printf("\t你好!請(qǐng)輸入要增加的航線(xiàn)條數(shù):");
scanf("%d",&add_m);
printf(" ----------------------------------------\n\n");
printf("\t\t請(qǐng)?zhí)钜韵滦畔ⅲ篭n");
for(i=m;i<m+add_m;i++)
{
printf("\n\t\t---------------------第%d條航線(xiàn)---------------------\n",i-m+1);
do{printf("\t\t請(qǐng)輸入航班號(hào)(唯一):");
scanf("%d",&f[i].Flight_No);
j=0;
while(j<i)
{
if(f[i].Flight_No==f[j].Flight_No)
{printf("\n\t\t該航班號(hào)已經(jīng)存在!\n");break;}
j++;
}
}while(j!=i);/*確保航班唯一*/
printf("\t\t請(qǐng)輸入飛機(jī)號(hào):");
scanf("%d",&f[i].Plane_No);
printf("\t\t請(qǐng)輸入起點(diǎn)的站名:");
scanf("%s",&f[i].beg_Name);
printf("\t\t請(qǐng)輸入終點(diǎn)的站名:");
scanf("%s",&f[i].Des_Name);
printf("\t\t起飛時(shí)間:(1~7)");
scanf("%d",&f[i].Week_Day);
printf("\t\t飛機(jī)的座位數(shù):");
scanf("%d",&f[i].Customer_Amount);
f[i].Free_Amount=f[i].Customer_Amount;
printf("\t\t頭等倉(cāng)(元) 中等倉(cāng)(元) 下等倉(cāng)(元)\n");
printf("\t\t");
scanf("%d%d%d",&f[i].Price[0],&f[i].Price[1],&f[i].Price[2]);
f[i].peo=0;
}
m=m+add_m; /*航線(xiàn)條數(shù)增加add_m條*/
printf("\t\t\t按任何鍵回上一層!");
getch();
}
void delete_air() /*刪除航線(xiàn)信息*/
{
int id;
int dec=0;
system("cls");
printf(" ~這里存有[%d]條航線(xiàn)~\n",m);
printf(" -----------------------------------------------------------------------------\n");
printf(" 航班號(hào) 飛機(jī)號(hào) 起點(diǎn) 終點(diǎn) 起飛時(shí)間 座位數(shù) 剩余 頭等倉(cāng) 中等倉(cāng) 下等倉(cāng)\n");
printf(" -----------------------------------------------------------------------------\n");
for(i=0;i<m;i++)
{
printf(" %-5d%10d%8s%7s 星期%s%8d%7d%7d%8d%7d\n",f[i].Flight_No,f[i].Plane_No,f[i].beg_Name,f[i].Des_Name,a[f[i].Week_Day-1],f[i].Customer_Amount,f[i].Free_Amount,f[i].Price[0],f[i].Price[1],f[i].Price[2]);
printf(" -----------------------------------------------------------------------------\n");
}
printf(" THE END\n");
printf(" 請(qǐng)輸入要?jiǎng)h除的航線(xiàn)的航班號(hào):");
scanf("%d",&id);
for(i=0;i<m;i++)
if(id==f[i].Flight_No)
break;
if(i==m)
printf(" 你輸入錯(cuò)誤或你輸入的不存在!\n");
else if(f[i].Customer_Amount!=f[i].Free_Amount)/*當(dāng)該航線(xiàn)有人訂票時(shí),不允許對(duì)該航線(xiàn)刪除操作*/
{ system("cls");
printf("\n\n\n\t\t\t\t該航線(xiàn)已經(jīng)鎖定!");
}
else
{printf(" 你肯定嗎?(1/0)");
scanf("%d",&dec);
if(dec==1)
{
f[i]=f[m-1];
m--;
printf(" 刪除成功!");
}
}
printf("\n 按任何鍵返回上一層!");
getch();
}
void check_air() /*查看航線(xiàn)信息*/
{
system("cls");
printf("\n\n ~這里存有[%d]條航線(xiàn)~\n",m);
printf(" -----------------------------------------------------------------------------\n");
printf(" 航班號(hào) 飛機(jī)號(hào) 起點(diǎn) 終點(diǎn) 起飛時(shí)間 座位數(shù) 剩余 頭等倉(cāng) 中等倉(cāng) 下等倉(cāng)\n");
printf(" -----------------------------------------------------------------------------\n");
for(i=0;i<m;i++)
{
printf(" %-5d%10d%8s%7s 星期%s%8d%7d%7d%8d%7d\n",f[i].Flight_No,f[i].Plane_No,f[i].beg_Name,f[i].Des_Name,a[f[i].Week_Day-1],f[i].Customer_Amount,f[i].Free_Amount,f[i].Price[0],f[i].Price[1],f[i].Price[2]);
printf(" -----------------------------------------------------------------------------\n");
}
printf(" THE END\n");
printf("\n 按任何鍵返回上一層……");
getch();
}
void change_air() /*修改航線(xiàn)信息*/
{int id;
int yn=0;
system("cls");
printf("\n\n ~這里存有[%d]條航線(xiàn)~\n",m);
printf(" -----------------------------------------------------------------------------\n");
printf(" 航班號(hào) 飛機(jī)號(hào) 起點(diǎn) 終點(diǎn) 起飛時(shí)間 座位數(shù) 剩余 頭等倉(cāng) 中等倉(cāng) 下等倉(cāng)\n");
printf(" -----------------------------------------------------------------------------\n");
for(i=0;i<m;i++)
{
printf(" %-5d%10d%8s%7s 星期%s%8d%7d%7d%8d%7d\n",f[i].Flight_No,f[i].Plane_No,f[i].beg_Name,f[i].Des_Name,a[f[i].Week_Day-1],f[i].Customer_Amount,f[i].Free_Amount,f[i].Price[0],f[i].Price[1],f[i].Price[2]);
printf(" -----------------------------------------------------------------------------\n");
}
printf(" THE END\n");
printf("請(qǐng)輸入要修改航線(xiàn)的航班號(hào):");
scanf("%d",&id);
j=0;
while(id!=f[j].Flight_No&&j<m)/*查找航線(xiàn)的位置*/
{j++;}
if(j==m) /*找不到該航線(xiàn)*/
{system("cls");
printf("\n\n\n\n\t\t\t 輸入的航線(xiàn)錯(cuò)誤或不存在!");
getch();
}
else if(f[j].Customer_Amount!=f[j].Free_Amount)/*當(dāng)該航線(xiàn)有人訂票時(shí),不允許對(duì)該航線(xiàn)進(jìn)行修改*/
{ system("cls");
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -