姓名——题目名称
}
if(zhekou==1) {
cout<<\学生证号码:\ cin>>zhengjian; }
else {
cout<<\身份证号码:\ cin>>zhengjian; }
cout< cout<<\日期:\月\日\ cout<<\车次:\ cout<<\车厢号: \ cout<<\姓名:\ cout<<\证件号码:\ if(zhekou==1) { cout<<\学生5折): \ money=L.elem[i].piaojia*L.elem[i].discut*num; } else { cout<<\票价:\ money=L.elem[i].piaojia*num; } cout<<\订票数:\ cout<<\座位号:\ //有退票优先卖退票 int k=0; //k为买到的票是退票的数目 for(int j=L.elem[i].tuipiaoshu-1;j>=0;j--) { cout<<\ k++; if(k>=num)break; 16 华东交通大学课程设计 } if(k for(int j=0;j cout<<\ } cout< cout<<\订票成功!\ L.elem[i].lastnum-=num; LinkList p,s; //用座位号记录购票人信息 p=L.elem[i].la; s=new LNode; if(!s) { cout<<\内存分配失败!\ } else { s->next=p->next; p->next=s; s->dingnum=num; s->fufei=money; s->zhekou=zhekou; s->name=new char[100]; s->zhengjian=new char[100]; strcpy(s->name,name); strcpy(s->zhengjian,zhengjian); int index=0; //座位号 while(L.elem[i].tuipiao>0) //买到的票是退票 { int j=L.elem[i].tuipiaoshu-1; s->zhuoweihao[index++]=L.elem[i].tuipiao[j]; 17 姓名——题目名称 L.elem[i].tuipiaoshu--; if(index>=num)break; } while(index s->zhuoweihao[index++]=L.elem[i].maipiao++; } } } } break; } } } while(n2==2); } void TuiPiao(SqList &L) { int n3=2,k; LinkList p; char *name=new char[100]; char *zhengjian=new char[100]; char *endstop=new char[100]; do { cout< for(int i=0;i if(!(strcmp(L.elem[i].endstop,endstop)==0)) { p=L.elem[i].la; if(!p->next)cout<<\没有该购票者\ else { p=p->next; 18 华东交通大学课程设计 while(!(strcmp(p->zhengjian,zhengjian)==0)&&p->next) p=p->next; if(strcmp(p->zhengjian,zhengjian)==0) { cout< cout<<\日期:\月\日\ cout<<\车次:\ cout<<\车厢号: \ cout<<\姓名:\ cout<<\证件号码:\ if(p->zhekou==1) { cout<<\票价:\ } else { cout<<\票价: \ } cout<<\订票数:\ cout<<\座位号:\ for(int j=0;j cout<<\ } cout< if(k>p->dingnum) { cout<<\你只有\张票,请重新确认!\ cout<<\重新确定;2.返回主菜单\ cin>>n3; } else 19 姓名——题目名称 { cout<<\确认;2取消;3.返回主菜单\ cin>>n3; if(n3==1) { cout<<\退票成功!\ for(int i1=L.elem[i].tuipiaoshu,i2=p->dingnum-1;i1 L.elem[i].tuipiao[i1]=p->zhuoweihao[i2]; } L.elem[i].tuipiaoshu+=k; L.elem[i].lastnum+=k; if(k==p->dingnum) { LinkList q=L.elem[i].la; while(q->next!=p)q=q->next; q->next=p->next; free(p); n3=3; } else { if(p->fufei==p->dingnum*L.elem[i].piaojia)p->fufei-=L.elem[i].piaojia*k; else { p->fufei-=L.elem[i].piaojia*k*L.elem[i].discut; } p->dingnum-=k; cout<<\你还有\张票\ n3=3; } } 20