• 大小: 1.69MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-09-02
  • 语言: 其他
  • 标签: 数据结构  

资源简介

本课程实践完成景区信息管理系统的实现,该系统有三个信息部分构成,分别为景点导游线路信息,制订景区道路铺设信息,停车场进出车辆信息。 主程序应用菜单选项包含:创建景区景点分布图,输出景区景点分布图,输出导游线路图,判断导游线路图有无回路,两个景点间的最短路径和最短距离,停车场车辆进出记录信息,输出道路修建规划图。

资源截图

代码片段和文件信息

#include  
using namespace std; 
#include//getch 
#include//清屏函数头文件  
#include“parking.cpp“
#define M 100 
#define INF 32767 
/**函数声明**/ 
void Welcome();//欢迎界面 
void returnMainFace();//返回主界面 
void MainFace();//主界面 
void create_graph();//创建景点图 
void print_graph();//输出景点图 
void guide_line();//导游路线 
void DFS(int c);//深度优先搜索导游路线 
void checked();// 检查是否存在一个合法的景区景点分布图 
void Num_Name();//打印景点编号与景点名称的对应信息 
void Dijkstra(int A[M][M]int path[M][M]);//Dijkstra算法 
void Y_N();//选项判断函数 
void check_circuit();//判断回路 
void find_information();//查找
void make_info();//建立景点介绍
void sort_attractions();//排序
void park();//停车场

/**定义数据结构**/ 
struct Matrix { 
    int m[M][M];//景点邻接矩阵 
    string Pname[M];//各个景点的名称 
int path[M];
};  
typedef struct { 
    string Sname;//景区名称 
int count;//景点数 
int edge;//道路数 
Matrix mat;//邻接矩阵 
}Scenic;  
Scenic S; 
struct Ainformation{ 
    string name;//景点名称 
string introduction; //介绍
int hot;//欢迎度
};  
Ainformation jiu[8]; 

//创建一个景区邻接矩阵 
void create_graph(){ 
    if(S.count>0){ 
cout<<“\n*当前已存在一个景区景点分布图!\n*继续操作将覆盖该景区景点分布图!(Y/N)“;
Y_N();     

    cout<<“\n*请输入景区的名称:“; 
    cin>>S.Sname; 
    cout<<“\n*请输入该景区的景点总数目:“; 
    cin>>S.count; 
    cout<<“\n*请输入景区的道路总数目:“;  
cin>>S.edge;   
int ij; 
    for(i=0;i        for(j=0;j            S.mat.m[i][j]=0;         
}     

    cout<<“\n*请输入道路两边连接的两个景点编号、名称及道路的长度\n“; 
    cout<<“\t(格式:小号在前大号在后,景点编号从1开始)“;    
for(i=0;i        cout<<“\n*第 “< int n1n2; //编号输入从1开始,矩阵下标从零开始         
cout<<“\t-景点 1 编号:“;        
cin>>n1;        
n1--; 
        cout<<“\t-景点 1 名称:“;    
cin>>S.mat.Pname[n1];  
        cout<<“\t-景点 2 编号:“;     
cin>>n2;         
n2--; 
        cout<<“\t-景点 2 名称:“;     
cin>>S.mat.Pname[n2]; 
cout<<“\t-两景点之间的道路长度:“;    
cin>>S.mat.m[n1][n2]; 
        S.mat.m[n2][n1]=S.mat.m[n1][n2];  


    cout<<“\n*景区创建成功!“;     
returnMainFace(); 
}  
void print_graph()//以邻接矩阵的形式输出景点分布 

    //checked(); 
//代替输入
for(int i=0;i        for(int j=0;j            S.mat.m[i][j]=0;         
}     

S.mat.m[0][1]=9;
S.mat.m[0][5]=8;
S.mat.m[1][2]=7;
S.mat.m[1][4]=6;
S.mat.m[2][3]=11;
S.mat.m[3][4]=3;
S.mat.m[5][6]=4;
S.mat.m[5][7]=5;
S.mat.m[6][7]=7;

for(int i=0;i        for(int j=0;j S.mat.m[j][i]=S.mat.m[i][j];//这里ij之前搞反了,导致矩阵全为0 
}     



    cout<<“\n*景区景点分布图(邻接矩阵表示)查询成功!\n“;     
cout<<“*景区名称:“< int ij; 
    cout<<“\n\t -----“;    
for(i=0;i        cout<<“---“;     

    cout<    cout<<“\t|编号|“;     //cout<<“    |“ 
    for(i=0;i        cout<<‘ ‘<
    cout<<‘|‘< for(i=0;i        cout<<“---“;     

    cout<<‘|‘<

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2016-11-23 23:59  合并测试1.1\
     文件       16620  2016-11-25 20:36  合并测试1.1\main.cpp
     文件     6753850  2016-11-23 23:59  合并测试1.1\main.exe
     文件        5159  2016-11-24 19:15  合并测试1.1\parking.cpp

评论

共有 条评论