资源描述:
《地铁线路问题算法》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、#include"stdio.h"#include"string.h"〃直线线路:intUneBus(charBusStationName[20][30],intlength,charStart[30]zcharEnd[30],charBusRoute[20][30],int&distance){intiJStart,iEnd;iStart=-l;iEnd=-l;for(i=0;i2、iEnd=i;}if(iStart==-l
3、
4、iEnd==-l)return0;distanee二iStart・iEnd;讦(distance<0)distance*=・l;if(iStart=iEnd;i--)strcpy(BusRoute[iStart-i],BusStationName[i]);return1;}〃环线线路intCircleBus(charBusStationNa
5、me[20][30],intlengthzcharStart[30],charEnd[30],charBusRoute[20][30],int&distance){inti,iStart,iEnd;intdisl,dis2;iStart=-l;iEnd=-l;for(i=0;i6、
7、iEnd==-l)return0;disl=(iStart-iE
8、nd+length)%length;dis2=(iEnd-iStart+length)%length;distance=disl9、-i+length)%length],BusStationName[i]);return1;}voidmain(){charBusStationNamel[20][30]={,,al0,';,all,,;,al2,,,,,al3',;,al4,7,al5,7'al6";,al7,,;,al8"/,,al9,,;,a20H,,,a21,,;,a22,7,a23,,;,a24,,/,,a25,,z,,a26,,;,,,;,,7,"};charBusStationName2[20][30]={,,bl^,,b2^,,b3^,,al2^,,b4^nb5^,^6^,^7,,z,,b
10、8,,/,,b9,7,bl0,,/,,a24,',,,bl1罗bl2Tbl3Tbl4Tbl5iimiiiiimi};charBusRoute[20][30);charBusRoutel[20][30];charBusRoute2[20][30];charBusRoute3[20][30];charBusRoute4[20][30];charnameA[30],nameB[30];jnti,distanc巳disl,dis2,dis3,dis4;intq;printf("请输入所需情况:肓线站换乘请输入1;环形站换乘请输入2;起始站在肓.线路线,终止站在环形路线
11、上请输入3;起始站在环形路线,终止站在直线路线上请输入4;n);scanf(“%d”,&q);switch(q){case1:printf("请输入起始站:“);scanf(”%s",&nameA);printf("请输入终止站:“);scanf("%s",&nameB);UneBus(BusStationNamel,17,nameA,nameB’BusRoute’distanee);for(i=l;i<=distance;i++)printf("%s",BusRoute[i]);printf("共经过%d站“