资源简介

数据结构课程设计 吉大中心校区导游系统 此程序是为学校数据结构课程设计而做的。 运行方法: 可通过打开校园导游系统.exe或校园导游系统.hta(不明白hta是什么的可以自行百度,虽然本人也是第一次使用)进入登陆界面。之后登陆界面会调用相应exe文件(校园导游系统admin.exe和校园导游系统user.exe)打开程序。 管理员模式密码为 1234(密码在登录界面程序中定义,无法更改。这一点是因为时间紧张,没有来得及添加密码功能。) 游客模式只有打开文件、查询景点、查询路径、显示、退出几个选项。 管理员模式有以上功能,还可添加景点、删除景点、修改景点、添加边、删除边。 程序运行过程中按照提示操作即可。 程序进入时默认打开map.txt和map.jpg,要打开其他文件请使用打开功能(文件有一定格式,请参看map.txt和map0.txt,要求先声明最大权值,然后声明景点数目,然后声明每一个景点的名称、简介、代号、X坐标、Y坐标,然后声明边的数目,然后声明每一条边的起点和终点的代号)。 数据结构.doc是数据结构课程设计课程的要求。程序设计就是按照这个要求进行的。 《数据结构》课程设计报告.doc是所提交的设计报告,但是仅有界面部分,里面有详细的代码说明。 login.jpg是登陆界面的背景图片。 三个文件夹中是源代码。分别对应于三个exe文件。 程序是采用绘图库编写(因为对于MFC是初自学,不甚会用)。所以如果要编译源代码,请先安装easyX图形库(对于该图形库,可自行百度,此处提供版本可能不是最新,请去easyX官网下载。)。 源代码全用VC6.0编译运行。VS2013应该会报错。codeblocks则不支持该图形库所以不能运行(或许应该说图形库不支持codeblocks?)。 若要学习图形库,可以使用压缩文件中的帮助文件,很有帮助的。但是图形库做应用程序仅限于初学者,如果要做应用程序,最好使用MFC。 程序使用邻接表存储图,使用迪杰斯特拉算法计算最短路径。使用绘图库绘制界面。 更多内容,请自己发掘。请看源代码。

资源截图

代码片段和文件信息

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include “Stack.h“
#include “functions.h“
#include “Graph_List.h“
#define WIDTH  (1000+(LEFTBORDER*2))
#define HEIGHT  (574+TOPBORDER+LEFTBORDER)
#define UP 72
#define DOWN 80
#define LEFT 75
#define RIGHT 77
#define BACKGROUND   “background.jpg“
#define BKCOLOR      RGB(240240240)    //原RGB(240240240)
#define SELECTCOLOR  RGB(25500)    //原RED
#define TEXTCOLOR    RGB(7102198)//GREEN//   //原BLUE
#define MENUCOLOR    RGB(208161227)//RGB(77197131)//RGB(112112112)//RGB(11775144)//RGB(7102198)  //原GREEN
#define CheckCancel if(iscancel){return -1;}
using namespace std;
Graph_List graph;
int choose;
int menunum = 11;
int menutop1 = 10;
int menutop = (menutop1 + 3);
#define left (LEFTBORDER)
int menuwidth = ((WIDTH - 2 * LEFTBORDER) / (menunum ));
int menuheight = 30;
int GetChoose();
int FrontMenu(Graph_List &graph );
int ShowAllVertex(Graph_List &graph);
int ShowAllPath(Graph_List &graph);
int printroad(int dx int dy int sx int sy) {
LINEstyle linestyle;
getlinestyle(&linestyle);
setlinestyle(PS_SOLID3NULL0);
setlinecolor(BLUE);
line(sxsydxdy);
setlinestyle(&linestyle);
    double x1 = (sx + dx) / 2;
    double y1 = (sy + dy) / 2;
    double x2 = ((3.0 / 8.0) * sx + (5.0 / 8.0) * dx);
    double y2 = ((3.0 / 8.0) * sy + (5.0 / 8.0) * dy);
    //double x1=sxx2=(sx+dx)/2y1=syy2=(sy+dy)/2;
    double k1 = (y2 - y1) / (x2 - x1);
    double k2 = (-1) / k1;
    double delta = 1600; //=(y2-y1)*(y2-y1)+(x2-x1)*(x2-x1);
    double a = sqrt((delta / 16) / (1 + k2 * k2));
    double b = a * fabs(k2);
    if(((x1 > x2) && (y1 < y2)) || ((x1 < x2) && (y1 > y2))) {
    } else {
        b = -1 * b;
    }
    if(x1 == x2) {
        a = 5;
        b = 0;
    }
    if(y1 == y2) {
        a = 0;
        b = 3;
    }
    POINT pts[] = { {x1 y1} {x2 + a y2 + b} {(x1 + x2) / 2 (y1 + y2) / 2} };
    POINT pts1[] = { {x1 y1} {x2 * 2 - (x2 + a) y2 * 2 - (y2 + b)} {(x1 + x2) / 2 (y1 + y2) / 2} };
    setfillcolor(BLUE);
solidpolygon(pts1 3);
    solidpolygon(pts 3);
    return 0;
}
int GetMouseXY(int& mousexint& mousey) {
    MOUSEMSG temp;
    temp.mkLButton = false;
    bool kick = false;
    while(!kick) {
        if(MouseHit()) {
            temp = GetMouseMsg();
            FlushMouseMsgBuffer();
            if(temp.mkLButton == false) {
                mousex = temp.x;
                mousey = temp.y;
            } 
else {
                kick = temp.mkLButton ;
            }
        }
    }
    return 0;
}
int AddVertex(Graph_List &graph) {
    LOGFONT font;
    gettextstyle(&font);
    settextstyle(10 0 _T(“宋体“));
    BeginBatchDraw();
    setlinecolor(GREEN);
    for(int lx = LEFTBORDER; lx <= WIDTH; lx += 50) {
        //outtextxy(lx TOPBORDER -

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

    I.A....       922  2014-12-24 23:08  admin\functions.h

    I.A....     12368  2014-12-24 23:09  admin\Graph_List.h

    I.A....     81199  2014-12-14 18:12  admin\map.jpg

    I.A....      4717  2014-12-23 22:06  admin\map.txt

    I.A....      1587  2014-12-24 12:54  admin\Stack.h

    I.A....     23377  2014-12-25 22:20  admin\校园导游系统.cpp

    I.A....    672056  2014-12-24 13:12  MFC登录\MFC导游系统\MFC导游系统.APS

    I.A....       831  2014-12-24 23:36  MFC登录\MFC导游系统\MFC导游系统.clw

    I.A....      2045  2014-12-23 09:51  MFC登录\MFC导游系统\MFC导游系统.cpp

    I.A....      4225  2014-12-23 23:33  MFC登录\MFC导游系统\MFC导游系统.dsp

    I.A....       547  2014-12-23 09:51  MFC登录\MFC导游系统\MFC导游系统.dsw

    I.A....      1315  2014-12-23 09:51  MFC登录\MFC导游系统\MFC导游系统.h

    I.A....     58368  2014-12-24 23:39  MFC登录\MFC导游系统\MFC导游系统.ncb

    I.A....     48640  2014-12-24 23:39  MFC登录\MFC导游系统\MFC导游系统.opt

    I.A....       559  2014-12-24 23:35  MFC登录\MFC导游系统\MFC导游系统.plg

    I.A....      5028  2014-12-24 13:12  MFC登录\MFC导游系统\MFC导游系统.rc

    I.A....      4393  2014-12-24 08:26  MFC登录\MFC导游系统\MFC导游系统Dlg.cpp

    I.A....      1409  2014-12-23 23:28  MFC登录\MFC导游系统\MFC导游系统Dlg.h

    I.A....      3645  2014-12-23 09:51  MFC登录\MFC导游系统\ReadMe.txt

    I.A....    570054  2014-12-23 19:21  MFC登录\MFC导游系统\res\login.bmp

    I.A....     67646  2014-12-24 15:27  MFC登录\MFC导游系统\res\MFC导游系统.ico

    I.A....       403  2014-12-23 09:51  MFC登录\MFC导游系统\res\MFC导游系统.rc2

    I.A....       823  2014-12-24 00:06  MFC登录\MFC导游系统\resource.h

    I.A....       213  2014-12-23 09:51  MFC登录\MFC导游系统\StdAfx.cpp

    I.A....      1054  2014-12-23 09:51  MFC登录\MFC导游系统\StdAfx.h

    I.A....       922  2014-12-24 23:08  user\functions.h

    I.A....     12368  2014-12-24 23:09  user\Graph_List.h

    I.A....     81199  2014-12-14 18:12  user\map.jpg

    I.A....      4717  2014-12-23 22:06  user\map.txt

    I.A....      1587  2014-12-24 12:54  user\Stack.h

............此处省略27个文件信息

评论

共有 条评论