#include#include #include #include #include using namespace std;#define N 20#define Max 100int n=10,m=10;struct Car//汽车路线{ char checi[N];//车次 char Sname[N];//始发站 char Lname[N];//终点站 char type[N];//车辆类型 long length;//里程 double Stime;//出站时间 double Ltime;//到站时间 int price;//票价 int zuonum;//座位数}car1[100]; struct Ticket//票务信息{ char checi[N];//车次 double timelong;//时间 int sellticketnum;//已订票数 int Nsellticketnum;//剩余票数}ticket1[100];struct information//订票信息{ char name[N];//姓名 char identity[N];//身份证号 char checi[N];//车次 char Date[N];//日期 int zuoNum;//座位号}number[100];void inputCar()//汽车路线数据读入{ ifstream iofile("checi.txt",ios::in); for(int i=0;i >car1[i].checi>>car1[i].Sname>>car1[i].Lname>>car1[i].type >>car1[i].length>>car1[i].Stime>>car1[i].Ltime>>car1[i].price>>car1[i].zuonum; iofile.close();}void outputcar1()//汽车路线数据输出{ for(int i=0;i >ticket1[i].checi>>ticket1[i].timelong>>ticket1[i].sellticketnum>>ticket1[i].Nsellticketnum; iofile.close();}void outputTicket()//票务信息数据输出{ for(int i=0;i >number1.checi; for(int i=0;i >number[i].name>>number[i].identity>>number[i].checi>>number[i].Date>>number[i].zuoNum; iofile.close();}void outputinformation()//订票信息数据输出{ for(int i=0;i >number1.name>>number1.identity>>number1.checi>>number1.Date>>number1.zuoNum; for(int i=0;i >number1.name>>number1.identity>>number1.checi>>number1.Date>>number1.zuoNum; for(i=0;i >car1[m].checi>>car1[m].Sname>>car1[m].Lname>>car1[m].type>>car1[m].length>>car1[m].Stime>>car1[m].Ltime>>car1[m].price>>car1[m].zuonum; strcpy(ticket1[m].checi,car1[m].checi); ticket1[m].Nsellticketnum=car1[m].zuonum; ticket1[m].sellticketnum=0; ticket1[m].timelong=car1[m].Ltime-car1[m].Stime; m++; for(int i=0;i >cartemp.checi; for(i=0;i >cartemp.checi; for(i=0;i >car1[i].checi>>car1[i].Sname>>car1[i].Lname>>car1[i].type>>car1[i].length>>car1[i].Stime>>car1[i].Ltime>>car1[i].price>>car1[i].zuonum; strcpy(ticket1[i].checi,car1[i].checi); ticket1[i].Nsellticketnum=car1[i].zuonum; ticket1[i].sellticketnum=0; ticket1[i].timelong=car1[i].Ltime-car1[i].Stime; ofstream outfile("checi.txt",ios::out); for(i=0;i >i; switch(i) { case 1:AddCarData();break; case 2:DeleteCarData();break; case 3:UpCarData();break; }}void Copyfile()//将三个文本文档的数据还原,借用临时文档{ int i=0; m=10; n=10; ifstream infile;//,infile2,infile3; ofstream outfile; infile.open("checi2.txt",ios::in); for(i=0;i >car1[i].checi>>car1[i].Sname>>car1[i].Lname>>car1[i].type >>car1[i].length>>car1[i].Stime>>car1[i].Ltime>>car1[i].price>>car1[i].zuonum; infile.close(); //outputcar1(); infile.clear();//没加之前就乱码啊,什么指针的啊, outfile.open("checi.txt",ios::out); for(i=0;i >ticket1[i].checi>>ticket1[i].timelong>>ticket1[i].sellticketnum>>ticket1[i].Nsellticketnum; //outputTicket(); outputTicket_file(); infile.close(); infile.clear(); infile.open("number2.txt",ios::in); for(i=0;i >number[i].name>>number[i].identity>>number[i].checi>>number[i].Date>>number[i].zuoNum; outputinformation_file(); infile.close(); //outputinformation();}void main(){ int i; char a[7],b[7]={ 'y','a','n','y','a','n'};//自动加反斜杠0 bool flag=true; system("color FC"); inputCar(); //outputcar1(); inputTicket(); //outputTicket(); inputinformation(); //outputinformation(); system("title 简单车票管理系统-myth"); system("color 98"); printf(" -------------------------------------------- \n"); printf(" | | \n"); printf(" | Welcome to MIS of Tickrt | \n"); printf(" | myth | \n"); printf(" -------------------------------------------- \n"); printf(" Please input a number(0..9) to continue!"); scanf("%d",&i); system("cls"); cout<<"请输入登陆密码(由6个字符组成):"< >select; switch(select) { case 1: Book_ticket(); break; case 2: Return_ticket(); break; case 3: Inquire_Ticket(); break; case 4: Change_Car(); break; } }while(select!=5); Copyfile(); getch(); cout<<"谢谢使用!"<