资源简介

大二寒假数据结构课程设计,包含源代码和注释,任务和报告文档,手绘图,以及一个演示视频,视频里的编译环境是codeblocks,而vc++和vs2019等一些IDE都可以,不懂的可以私信我,设计公交线路所需的储存结构,站点信息和线路信息都存放在txt文件中,并将文件中的数据读入内存,包括换乘一次的路径算法,最短路径算法。提供用户操作的菜单和界面实现添加、删除、修改公交、站点、线路等信息,并将修改后的信息重新保存回文件。(数据具有关联性)。不懂的可以私信,没有积分的也可以问我要。

资源截图

代码片段和文件信息

#include 
#include 
#include 
#include 
#include 

#define None -1
#define ST_FALL -1
#define ST_OK 1

typedef int Status;

int BUS_NUM;
int STATION_NUM;
int ROUTE_NUM;




//函数声明

void LoadMapDate();
int FindBus(char* bus);
int GetBus(char* bus);
int FindStation(char* station);
int GetStation(char* station);
void AddBus(char* buschar* pStartchar* pEnd);

void AddBus_Supplement(int nBus);
int Find_Next_Station(int nBusint nStation);

Status AddRoute(int nBusint nStartint nEndint distance);
int QueryStation(char* pStationchar** buses);
int QueryBus(char* pBuschar** stations);
void ClearVisited();
bool HasPath_Result(char* pStartchar* pEnd);
bool HasPath(int nStartint nEndbool* visited);
bool directPath(char* pStartchar* pEndint* direct_bus);
void Show_directPath(char* pStartchar* pEndint nBus);
void Show_transferPath(char* pStartchar* pEnd);
int load_data();
int modify_data();
int Find_ROUTES_1(int nbusint nstation);
int Find_ROUTES_2(int nbusint nstation);
void delete_ROUTES(int flag);




int ((*ROUTES)[4]);

char* ((*BUSES)[3]);

char** STATIONS;



//定义结构体



//1、定义结构体BUS代表一个公交车线路

typedef struct Bus
{
    char* name; //公交线路名
    int start;  //起点
    int end;    //终点
    int* stations;   //公交线路站点索引数组
    int station_num;//站点个数
}Bus;



//2、定义结构体STATION代表一个站点

typedef struct Station
{
    char* station;          //站点名
    struct Route* routes;   //从该站点出发的所有下行路线的链域
}Station;



//3、定义结构体ROUTE代表公交线路中的一个路段(邻接表结点)

typedef struct Route
{
    int station;           //指向的站点索引号
    int bus;               //公交索引号
    int distance;          //两点之间公路的距离
    bool visited;          //遍历时的标识符
    struct Route* next;    //起始站点相同的,下一条下行路线
}Route;


//4、定义结构体BUSMAP存储整个公交地图信息

typedef struct BusMap
{
    Bus* buses;             //公交线路数组
    Station* stations;       //站点数组
    int station_num;        //站点数
    int bus_num;            //公交线路数
}BusMap;


BusMap g_sMap;  //定义全局变量


//步骤三、创建公交线路


void LoadMapDate()
{
    //1、加载公交线路信息,将公交线路数组中的信息加载到g_sMap中的公交线路数组中。

    g_sMap.bus_num=BUS_NUM;
    g_sMap.buses=(Bus*)malloc(sizeof(Bus)*BUS_NUM);
    int i;
    for(i=0;i    {
        g_sMap.buses[i].name=BUSES[i][0];
        g_sMap.buses[i].start=g_sMap.buses[i].end=None;
        g_sMap.buses[i].station_num=None;
    }


    //2、加载站点信息,将站点数组中的信息加载到g_sMap中的站点数组中。

    g_sMap.station_num=STATION_NUM;
    g_sMap.stations=(Station*)malloc(sizeof(Station)*STATION_NUM);
    int j;
    for(j=0;j    {
        g_sMap.stations[j].station=STATIONS[j]; //初始化站点名
        g_sMap.stations[j].routes=NULL;         //下行线路暂时设置为空
    }



    //在LoadMapData函数中实现添加公交线路信息和添加路段信息。

   //添加公交线路信息
   int m;
   for(m=0;m   {
       AddBus(BUSES[m][0]BUSES[m][1]BUSES[m][2]);
   }
   //添加路段信息
   int n;
   for(n=0;n   {

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      52532  2020-06-02 20:43  公交线路图\bin\Debug\公交线路图.exe

     文件        210  2020-06-02 20:09  公交线路图\BUSES.txt

     文件      28841  2020-06-02 20:43  公交线路图\main.c

     文件          6  2020-06-01 20:10  公交线路图\MAPNUM.txt

    ..A..H.     14336  2020-05-20 20:14  公交线路图\obj\.vs\obj\v16\.suo

     文件         37  2020-05-20 20:13  公交线路图\obj\.vs\ProjectSettings.json

     文件      90112  2020-05-20 20:14  公交线路图\obj\.vs\slnx.sqlite

     文件        132  2020-05-20 20:14  公交线路图\obj\.vs\VSWorkspaceState.json

     文件      28622  2020-06-02 20:43  公交线路图\obj\Debug\main.o

     文件        386  2020-06-01 13:43  公交线路图\ROUTES.txt

     文件         72  2020-06-02 20:09  公交线路图\STATIONS.txt

     文件       1099  2020-04-10 18:22  公交线路图\公交线路图.cbp

     文件        152  2020-06-02 20:38  公交线路图\公交线路图.depend

     文件        358  2020-06-02 20:57  公交线路图\公交线路图.layout

     文件     308652  2020-08-31 12:57  报告.docx

     文件     109401  2020-04-07 16:59  手绘图.png

     文件      79360  2020-08-31 13:05  数据结构课程设计任务书2020.1.doc

     文件  105969497  2020-06-02 20:48  演示视频.mp4

     目录          0  2020-06-02 20:57  公交线路图\obj\.vs\obj\v16

     目录          0  2020-07-15 12:36  公交线路图\obj\.vs\obj

     目录          0  2020-07-15 12:36  公交线路图\bin\Debug

     目录          0  2020-07-15 12:36  公交线路图\obj\.vs

     目录          0  2020-07-15 12:36  公交线路图\obj\Debug

     目录          0  2020-06-02 20:57  公交线路图\bin

     目录          0  2020-06-02 20:57  公交线路图\obj

     目录          0  2020-07-15 12:36  公交线路图

----------- ---------  ---------- -----  ----

            106683805                    26


评论

共有 条评论