导航代码

合集下载

VSCode代码导航高级教程与实用技巧分享

VSCode代码导航高级教程与实用技巧分享

VSCode代码导航高级教程与实用技巧分享Visual Studio Code(简称VSCode)是一款轻量级、开源的集成开发环境,被广泛应用于软件开发领域。

它具有丰富的功能和插件生态系统,其中代码导航是开发者们经常使用的核心功能之一。

本文将为您介绍VSCode代码导航的高级教程和实用技巧,帮助您更加高效地编写代码。

一、代码导航基本操作简介VSCode提供了多种代码导航操作,使开发者能够快速定位和浏览代码。

下面列举了一些常用的代码导航快捷键:1. 跳转到定义:Ctrl + 鼠标左键单击或者F122. 跳转到声明:Ctrl + 鼠标右键单击或者Ctrl + Shift + 单击3. 跳转到引用:Shift + F124. 转到下一个/上一个符号:F8 / Shift + F85. 转到文件:Ctrl + P,然后输入文件名二、代码导航高级技巧分享除了基本操作外,VSCode还提供了一些高级的代码导航技巧,帮助开发者更加灵活地浏览和管理代码。

1. 多光标编辑:按住Ctrl键,在代码中点击多个位置,可以同时编辑多处相同的代码,提高开发效率。

2. 代码导航栏:点击VSCode左侧的代码导航栏(也称为导航器),可以快速浏览项目中的各个文件和文件夹,方便定位和打开。

3. 代码区域折叠:使用Ctrl + Shift + \,可以折叠/展开代码中的函数、类等代码块,使代码更加清晰易读。

4. 代码片段:在VSCode中,您可以创建自定义的代码片段,通过快捷方式快速插入常用代码,提高编码效率。

5. 文件路径导航:使用Ctrl + 单击文件路径,可以快速在文件和文件夹之间切换,方便查看和编辑相关文件。

三、插件推荐除了自带的代码导航功能,VSCode还支持各式各样的插件,进一步增强代码导航的功能。

以下是几个常用的插件推荐:1. IntelliSense插件:提供代码补全和智能提示功能,方便开发者快速编写代码。

2. Git插件:集成Git版本控制系统,可以方便地查看和管理代码修改记录。

VSCode代码导航技巧与实践

VSCode代码导航技巧与实践

VSCode代码导航技巧与实践VSCode(Visual Studio Code)是一款流行的开源代码编辑器,它提供了许多方便的功能和工具来提升开发者的工作效率。

本文将介绍一些VSCode代码导航的技巧与实践,帮助读者更加高效地管理和浏览代码。

1. 代码导航插件在VSCode中,我们可以通过安装一些代码导航插件来提升代码的浏览和导航体验。

例如,"Code Outline"插件可以显示当前文件的代码结构,使得快速定位到特定函数或类成为可能。

还有"Project Manager"插件可以帮助开发者快速切换项目,方便代码的导航和管理。

通过选择适合自己的插件,我们可以根据个人需求来增强VSCode的代码导航功能。

2. 使用导航栏和面包屑导航VSCode提供了导航栏和面包屑导航两种方式来帮助我们浏览和导航代码。

导航栏位于编辑器的左侧,可以显示当前文件的文件夹结构,方便我们快速切换文件和文件夹。

面包屑导航位于编辑器的顶部,显示的是当前文件的层级关系,可以方便地跳转到上级目录或者其他文件。

通过使用导航栏和面包屑导航,我们可以快速地在项目中进行代码的导航与切换。

3. 使用快捷键和命令VSCode提供了丰富的快捷键和命令来帮助我们进行代码的导航和浏览。

例如,可以使用快捷键Ctrl + P来快速打开文件,通过输入文件名的一部分来进行快速定位。

还可以使用快捷键Ctrl + Shift + O来查看当前文件的符号列表,方便定位到特定的函数或变量。

此外,VSCode 还提供了命令面板,可以通过Ctrl + Shift + P来打开,然后输入相应的命令来执行特定的操作,如查找文件、跳转到特定行等。

熟练使用这些快捷键和命令可以节省大量的时间,提高代码导航的效率。

4. 利用编辑器的功能VSCode作为一款强大的代码编辑器,内置了许多实用的功能来提升代码的导航和浏览体验。

例如,通过按住Ctrl键并同时鼠标滚动,可以放大或缩小编辑器中的字体大小,方便阅读代码。

VSCode的代码导航与跳转技巧

VSCode的代码导航与跳转技巧

VSCode的代码导航与跳转技巧随着软件开发的迅猛发展,编码工具的选择变得越来越重要。

对于许多开发人员来说,Visual Studio Code (简称VSCode) 已经成为他们的首选编辑器。

VSCode提供了丰富的功能和插件,帮助开发人员更高效地编写代码。

本文将介绍一些VSCode中的代码导航与跳转技巧,帮助您更轻松地阅读和编辑代码。

1. 快速定位代码行在VSCode中,您可以通过使用行号来快速定位到代码的特定行。

在编辑器的左侧边栏中,您会看到一个垂直的行号栏,显示了每一行的行号。

要快速跳转到特定行,只需点击行号区域,然后输入所需的行号即可。

2. 光标导航VSCode提供了各种快捷键和命令,帮助您在代码中快速导航。

以下是几个常用的光标导航技巧:- 使用Ctrl + G (或Cmd + G) 快捷键,输入行号,跳转到特定行。

- 使用Ctrl + P (或Cmd + P) 快捷键,输入文件名,快速打开文件。

- 使用Ctrl + F (或Cmd + F) 快捷键,在文件中搜索特定的内容。

- 使用Ctrl + D (或Cmd + D) 快捷键,选中相同的单词,多次按下进行多重选择。

3. 列选择模式有时候,您可能需要同时编辑多个代码行。

在VSCode中,您可以使用列选择模式来快速进行列选择和编辑。

只需按住Alt键(或Option 键),并用鼠标选择所需的区域。

然后,您可以同时编辑这些选中的代码行。

4. 代码的跳转与查看VSCode提供了多种方法来跳转和查看代码。

以下是几个常用的代码导航技巧:- 使用Ctrl + 左键单击(或Cmd + 左键单击),快速跳转到代码中的函数或变量的定义位置。

- 使用Ctrl + - (或Cmd + -)快捷键,返回到跳转之前的位置。

- 使用Ctrl + Shift + O (或Cmd + Shift + O),在当前文件中快速跳转到特定的函数或变量。

- 使用Ctrl + Shift + F (或Cmd + Shift + F),全局搜索代码。

网站导航菜单代码高亮显示通用代码

网站导航菜单代码高亮显示通用代码

网站导航菜单代码高亮显示通用代码点击查看DEMO1.首先将以下代码插入到你body需要设置导航的地方<div id="navmenu"><ul id="navi"><li><a href="index.htm" _fcksavedurl="index.htm">梧桐首页</a></li><li><a href="index1.htm" _fcksavedurl="index1.htm">网站优化</a></li></ul></div><script type="text/javascript" language="javascript">var nav = document.getElementById("navi");var links = nav.getElementsByTagName("li");var lilen = nav.getElementsByTagName("a"); //判断地址var currenturl = document.location.href;var last = 0;for (var i=0;i<links.length;i++){var linkurl = lilen[i].getAttribute("href");if(currenturl.indexOf(linkurl)!=-1){last = i;}}links[last].className = "navon"; //高亮代码样式</script>2.然后将以下CSS代码添加到你网站的CSS文件中#navmenu{ width:980px;}#navmenu ul{ padding:0px; margin:0px;}#navmenu ul li{ float:left; width:80px; list-style:none; text-align:center; height:30px; line-height:30px;}.navon{ background:#000000;} .navon a{ color:#ffffff;}。

如何使用程序编辑器进行代码导航和查找

如何使用程序编辑器进行代码导航和查找

如何使用程序编辑器进行代码导航和查找现代软件开发离不开程序编辑器,它能够帮助开发人员更高效地进行代码编写和修改。

其中,代码导航和查找是程序编辑器的重要功能之一,能够帮助开发人员快速定位代码位置、跳转到指定的函数或类,并进行全局或局部的代码搜索。

本文将介绍使用程序编辑器进行代码导航和查找的常用技巧和方法。

一、快捷键快速导航程序编辑器通常提供了一些快捷键来实现快速导航的功能。

以下是一些常见的快捷键及其对应的功能:1. Ctrl + 鼠标点击:点击代码中的函数或类名,按下 Ctrl 键并同时点击该名称,可快速跳转到函数或类的定义或声明处。

2. Ctrl + 函数键:按下 Ctrl 键并同时按下相应的函数键,可以在当前文件中跳转到下一个或上一个函数或类的定义或声明处。

3. Ctrl + Shift + 函数键:按下 Ctrl 和 Shift 键,并同时按下相应的函数键,可以在整个项目中跳转到下一个或上一个函数或类的定义或声明处。

4. Ctrl + 数字键:按下 Ctrl 键并同时按下数字键 1~9,可以在编辑器的不同标签页之间进行快速切换。

例如,Ctrl+1 可切换到第一个标签页,Ctrl+2 可切换到第二个标签页,依此类推。

二、使用导航面板进行代码导航除了快捷键,程序编辑器还提供了导航面板来帮助开发人员进行代码导航。

导航面板通常包括项目导航、文件导航和符号导航等功能,以下是具体的使用方法:1. 项目导航:程序编辑器通常会显示项目目录结构。

通过点击目录结构中的文件和文件夹,可以在编辑器中快速打开或跳转到相应的代码文件。

2. 文件导航:导航面板中通常还包括文件列表,可以列出当前打开的文件以及其他已打开的文件。

通过点击文件列表中的文件名,可以在编辑器中快速切换到相应的文件。

3. 符号导航:导航面板还可以显示当前文件的函数、类、变量等符号列表。

通过点击相应的符号名称,可以在编辑器中快速跳转到该符号的定义或声明处。

VSCode实用技巧快速定位和导航代码的方法

VSCode实用技巧快速定位和导航代码的方法

VSCode实用技巧快速定位和导航代码的方法VSCode实用技巧:快速定位和导航代码的方法在如今各种编程工具中,Visual Studio Code (VSCode) 凭借其强大的功能和高度可定制性成为了众多程序员的首选。

然而,随着代码规模的增长和项目的复杂性不断提高,有效地定位和导航代码变得尤为重要。

本文将介绍一些在VSCode中实用的技巧,帮助你快速准确地定位和导航代码。

1. 代码导航栏(Code Navigation Bar)代码导航栏位于VSCode编辑器的左侧,通过该工具栏,我们可以快速导航到不同的代码段。

在导航栏的顶部,有一个搜索框,可以输入关键字快速定位到对应的文件或代码。

2. 文件导航器(File Explorer)VSCode的文件导航器位于左侧面板的最上方,显示了当前项目的文件和文件夹结构。

通过文件导航器,你可以快速浏览并打开项目中的任意文件。

另外,你还可以使用键盘快捷键Ctrl/Cmd + P,然后输入文件名,也能快速找到并打开对应的文件。

3. 快速定位到函数/方法(Go to Function/Method)当你工作中需要查看或编辑某个函数或方法时,可以使用快捷键Ctrl/Cmd + Shift + O。

在弹出的搜索框内输入函数名或方法名,VSCode将自动过滤出相关的函数或方法,你只需点击即可快速跳转到指定位置。

4. 定位到定义处(Go to Definition)Ctrl/Cmd + 左键单击某个函数、方法、变量或类名,将会跳转到该标识符的定义处。

这个功能在进行函数调用追踪、类库源码查看等场景中非常有用,能够帮助你更好地理解代码的结构和执行逻辑。

5. 文件间的跳转(Go to Next/Previous)如果你在多个文件之间进行复杂代码调试或者查看工作,那么快速跳转到上一个或下一个文件就显得非常有必要了。

VSCode提供了相应的快捷键Alt + 左箭头或Alt + 右箭头,可以在打开的文件之间快速切换。

C语言实现导航功能

C语言实现导航功能

C语⾔实现导航功能本⽂实例为⼤家分享了C语⾔实现导航功能的具体代码,供⼤家参考,具体内容如下#include<stdio.h>#include<string.h>#define NUM 25#define INFINITY 32767#define False 0#define True 1typedef struct{int number;//顶点的编号const char *sight;//顶点的信息} VertexType;//顶点的类型typedef struct{VertexType vex[NUM];//存放顶点信息int arcs[NUM][NUM];//邻接矩阵数组int vexnum;//顶点个数}MGraph;MGraph G;/**由传⼊的节点个数创建图**/void GreateMGraph(int v){G.vexnum=v;//传⼊节点个数for(int i=1;i<G.vexnum;i++){G.vex[i].number=i;}//配置顶点编号/**编辑顶点信息**/G.vex[0].sight="各景点名字";G.vex[1].sight="⼤门⼝";G.vex[2].sight="⾏政办公楼";G.vex[3].sight="北区教室实训中⼼";G.vex[4].sight="⼀号教学楼";G.vex[5].sight="⼆号教学楼";G.vex[6].sight="实验楼";G.vex[7].sight="三号教学楼";G.vex[8].sight="图书馆";G.vex[9].sight="开⽔房";G.vex[10].sight="超市";G.vex[11].sight="榴馨苑";G.vex[12].sight="洗浴中⼼";G.vex[13].sight="骊秀苑";G.vex[14].sight="综合楼";G.vex[15].sight="游泳池";G.vex[16].sight="主⽥径场";G.vex[17].sight="综合⽂体馆";/**先将所有顶点之间的距离设置为INFINITY**/for(int i=1;i<=G.vexnum;i++){for(int j=1;j<=G.vexnum;j++){G.arcs[i][j]=INFINITY;}}/**设置各顶点之间的距离**/G.arcs[1][2]=G.arcs[2][1]=255;G.arcs[1][4]=G.arcs[4][1]=501;G.arcs[1][5]=G.arcs[5][1]=535;G.arcs[1][6]=G.arcs[6][1]=705;G.arcs[1][7]=G.arcs[7][1]=722;G.arcs[1][8]=G.arcs[8][1]=790;G.arcs[2][3]=G.arcs[3][2]=530;G.arcs[2][4]=G.arcs[4][2]=450;G.arcs[2][5]=G.arcs[5][2]=484;G.arcs[2][6]=G.arcs[6][2]=654;G.arcs[2][7]=G.arcs[7][2]=663;G.arcs[2][8]=G.arcs[8][2]=748;G.arcs[3][8]=G.arcs[8][3]=1054;G.arcs[3][17]=G.arcs[17][3]=713;G.arcs[4][5]=G.arcs[5][4]=436;G.arcs[4][6]=G.arcs[6][4]=158;G.arcs[4][7]=G.arcs[7][4]=527;G.arcs[4][8]=G.arcs[8][4]=534;G.arcs[5][6]=G.arcs[6][5]=688;G.arcs[5][7]=G.arcs[7][5]=561;G.arcs[5][8]=G.arcs[8][5]=603;G.arcs[6][7]=G.arcs[7][6]=428;G.arcs[6][8]=G.arcs[8][6]=329;G.arcs[6][9]=G.arcs[9][6]=547;G.arcs[7][8]=G.arcs[8][7]=254;G.arcs[8][11]=G.arcs[11][8]=421;G.arcs[8][17]=G.arcs[17][8]=879;G.arcs[9][10]=G.arcs[10][9]=178;G.arcs[10][11]=G.arcs[11][10]=213;G.arcs[10][12]=G.arcs[12][10]=114;G.arcs[12][13]=G.arcs[13][12]=415;G.arcs[13][14]=G.arcs[14][13]=104;G.arcs[13][16]=G.arcs[16][13]=427;G.arcs[13][15]=G.arcs[15][13]=576;G.arcs[14][17]=G.arcs[17][14]=688;G.arcs[15][16]=G.arcs[16][15]=213;G.arcs[16][17]=G.arcs[17][16]=214;}/**展⽰校园地图**/void Map(){printf("\n\n\n");printf(" **************************河南财经政法⼤学*******************************"); printf("\n\n\n");printf(" ------------------------15游泳池 \n");printf(" | | \n");printf(" | | \n");printf(" 12洗浴中⼼----------------13骊绣苑---------------------16主⽥径场 \n");printf(" | | | \n");printf(" 10超市----11榴馨苑 14综合楼 | \n");printf(" | | |----------------------17综合⽂体馆 \n");printf(" 9开⽔房 | | \n");printf(" | ------------8图书馆--------------------------| \n");printf(" | | | \n");printf(" |-------------6实验楼------|--------7三号教学楼 | \n");printf(" | | | | \n");printf(" | | | | \n");printf(" 4⼀号教学楼------|--------5⼆号教学楼 | \n");printf(" | | \n");printf(" | | \n");printf(" |---2⾏政楼---------------3北区 \n");printf(" | \n");printf(" | \n");printf(" 1⼤门⼝ \n");}/**介绍校园各景点概况**/void Info(int sight_num,char data[][200]){if(sight_num==1)puts(data[1]);if(sight_num==2)puts(data[2]);if(sight_num==3)puts(data[3]);if(sight_num==4)puts(data[4]);if(sight_num==5)puts(data[5]);if(sight_num==6)puts(data[6]);if(sight_num==7)puts(data[7]);if(sight_num==8)puts(data[8]);if(sight_num==9)puts(data[9]);if(sight_num==10)puts(data[10]);if(sight_num==11)puts(data[11]);if(sight_num==12)puts(data[12]);if(sight_num==13)puts(data[13]);if(sight_num==14)puts(data[14]);if(sight_num==15)puts(data[15]);if(sight_num==16)puts(data[16]);if(sight_num==17)puts(data[17]);if(sight_num==18)puts(data[18]);if(sight_num==19)puts(data[19]);if(sight_num==20)puts(data[20]);if(sight_num==21)puts(data[21]);if(sight_num==22)puts(data[22]);if(sight_num==23)puts(data[23]);if(sight_num==24)puts(data[24]);if(sight_num==25)puts(data[25]);}/**开始菜单**/int Menu(){int c;Map();printf("\t\t欢迎使⽤河南财经政法⼤学导航图系统\n");printf("\t\t 1.查询地点路径 \n");printf("\t\t 2.地点信息简介 \n");printf("\t\t 3.退出 \n");printf(" **************************河南财经政法⼤学*******************************\n");printf("请输⼊您的选择:");scanf("%d",&c);return c;}/**地图的导航功能**//**输出任意两点之间的最短路径**/void guide_Dispath_two(MGraph g,int dist[],int path[],int S[],int v,int i)//v为起点,i为终点 {int apath[NUM],d=0; //存放⼀条最短的路径以及顶点个数(路径中终点为⾸) int j,k; //k⽤来存放终点的前⾯的节点if(S[i]==1 && i!=v){printf("从顶点%d到顶点%d的路径长度为:%d\t路径为:",v,i,dist[i]);apath[d]=i; //把终点放在数组中的⾸位k=path[i];if(k==-1)printf("⽆路径");/**利⽤循环将最短路径中的各节点存⼊apath数组**/else{while(k!=v){d++;apath[d]=k;k=path[k];}}d++; apath[d]=v; //将起点添加进去printf("%d",apath[d]); //输出起点for(j=d-1;j>=0;j--){printf("->%d",apath[j]); //循环输出最短路径中的各节点}}}//以编号为v的顶点为起点,w为终点void guide_Dijkstra(MGraph g,int v,int w){int dist[NUM],path[NUM];int S[NUM]; //S[i]=1表⽰顶点i在S中,S[i]=0表⽰顶点i在U中int MINdis,i,j,u;for(i=1;i<=g.vexnum;i++){dist[i]=g.arcs[v][i]; //距离初始化(距顶点v的距离)S[i]=0; //S[]置空if(g.arcs[v][i]<INFINITY) //路径初始化path[i]=v; //顶点v到顶点i有边时,置顶点i的前⼀个顶点为顶点velsepath[i]=-1; //顶点v到顶点i没边时,置顶点i的前⼀个顶点为-1}S[v]=1;path[v]=0; //源点编号v放⼊S中for(i=1;i<=g.vexnum-1;i++) //循环直到所有顶点的最短路径都求出{MINdis=INFINITY; //MINdis置最⼤长度初值for(j=1;j<=g.vexnum;j++) //选取不在S中(即U中)且具有最⼩最短路径长度的顶点u {if(S[j]==0 && dist[j]<MINdis){u=j;MINdis=dist[j];}}S[u]=1; //顶点u加⼊S中for(j=1;j<=g.vexnum;j++) //修改不在S中(即U中)的顶点的最短路径{if(S[j]==0)if(g.arcs[u][j]<INFINITY && dist[u]+g.arcs[u][j]<dist[j]){dist[j]=dist[u]+g.arcs[u][j];path[j]=u;}}}guide_Dispath_two(g,dist,path,S,v,w); //输出最短路径}/**将⽂件中的景点信息载⼊数组**/void load_sight_data(char data[][200],MGraph g)FILE *fp;int i;if((fp=fopen("C:\\Users\\admin\\Desktop\\导航\\sight_data.txt","r"))==NULL){printf("File can't open");return;}for(i=1;i<=g.vexnum;i++){fgets(data[i],200,fp);}fclose(fp);}/**修改景点信息**/void change_sight_data(char user_change_data[200],MGraph g){FILE *fin,*ftp;int i;fin=fopen("C:\\Users\\admin\\Desktop\\导航\\sight_data.txt","r");//读打开原⽂件ftp=fopen("C:\\Users\\admin\\Desktop\\导航\\temp.txt","w");//写打开临时⽂件if(fin==NULL || ftp==NULL){printf("打开⽂件失败");return;}for(i=1;i<=g.vexnum;i++){char change_data[200];fgets(change_data,200,fin);if(change_data[0]==user_change_data[0] && change_data[1]==user_change_data[1]){fputs(user_change_data,ftp);//⽽⽤fputs直接将user_change_data直接写⼊⽂件没有换⾏符,需要添加换⾏符 fprintf(ftp,"\n");}else{fputs(change_data,ftp);//在使⽤fgets函数得到change_data数组时换⾏符会被保存,此处不需要加换⾏符}}fclose(fin);fclose(ftp);remove("C:\\Users\\admin\\Desktop\\导航\\sight_data.txt");rename("C:\\Users\\admin\\Desktop\\导航\\temp.txt","C:\\Users\\admin\\Desktop\\导航\\sight_data.txt");}/**增添景点到⽂件内**/void add_sight_data(char change_data[200],MGraph g){FILE *fp;if((fp=fopen("C:\\Users\\admin\\Desktop\\导航\\sight_data.txt","a"))==NULL){printf("File can't open");return;}fprintf(fp,"\n");fputs(change_data,fp);fprintf(fp,"\n");rewind(fp);fclose(fp);}/**修改密码,保存到密码⽂件中**/void change_password(char password[30]){FILE *fp;fp=fopen("C:\\Users\\admin\\Desktop\\导航\\password_temp.txt","w");if(fp==NULL){printf("打开⽂件失败");return;}fputs(password,fp);fclose(fp);remove("C:\\Users\\admin\\Desktop\\导航\\password.txt");rename("C:\\Users\\admin\\Desktop\\导航\\password_temp.txt","C:\\Users\\admin\\Desktop\\导航\\password.txt"); }/**将密码装进密码数组中**/void load_password(char password[30]){FILE *fp;if((fp=fopen("C:\\Users\\admin\\Desktop\\导航\\password.txt","r"))==NULL){printf("File can't open");return;}fgets(password,30,fp);fclose(fp);}int admin_Menu(){int c;printf("**************管理系统****************\n");printf("\t\t欢迎使⽤管理员操作系统\n");printf("1.修改登录密码\n");printf("2.添加新景点\n");printf("3.修改景点信息\n");printf("4.新建景点路径\n");printf("5.退出\n");printf("**************************************\n");printf("请输⼊您的选择:");scanf("%d",&c);return c;}int main(){GreateMGraph(17);char sight_data[NUM][200];char password[30];int choice;int Menu_choice;int start,end;do{printf("欢迎使⽤河南财经政法⼤学导航系统\n");printf("请问您的⾝份是:1.管理员 2.游客 3.退出\n");scanf("%d",&choice);if(choice==2){do{Menu_choice=Menu();if(Menu_choice==1){printf("请输⼊您现在的位置:");scanf("%d",&start);printf("\n");printf("请输⼊您想要到达的位置:");scanf("%d",&end);guide_Dijkstra(G,start,end);}if(Menu_choice==2){int sight_num;load_sight_data(sight_data,G);printf("请输⼊您要查询的景点编号:");scanf("%d",&sight_num);Info(sight_num,sight_data);}if(Menu_choice==3){break;}}while(1);}if(choice==1){getchar();load_password(password);char user_input_psw[30];printf("请输⼊管理员登录密码:");gets(user_input_psw);if(strcmp(password,user_input_psw)==0){printf("密码正确!\n");int admin_choice;do{admin_choice=admin_Menu();if(admin_choice==1){getchar();char user_change_psw[30];printf("请输⼊新的密码:\n");gets(user_change_psw);change_password(user_change_psw);load_password(password);printf("密码修改成功!\n");}if(admin_choice==2){getchar();char uadd_sight_data[200];printf("请输⼊您要添加的景点以及该景点信息:\n"); gets(uadd_sight_data);add_sight_data(uadd_sight_data,G);load_sight_data(sight_data,G);G.vexnum++;char *p;p=strtok(uadd_sight_data," ");p=strtok(NULL," ");G.vex[G.vexnum].number=G.vexnum;G.vex[G.vexnum].sight=p;printf("添加成功!\n");}if(admin_choice==3){getchar();char user_sight_data[200];printf("请输⼊您要修改的景点信息:\n");gets(user_sight_data);change_sight_data(user_sight_data,G);load_sight_data(sight_data,G);printf("修改成功!\n");}if(admin_choice==4){int new_start,new_end;int length;printf("请输⼊您想要在哪两点之间添加路线:\n"); printf("起点:");scanf("%d",&new_start);printf("\n");printf("终点:");scanf("%d",&new_end);printf("请输⼊两顶点之间的距离:\n");scanf("%d",&length);printf("\n");G.arcs[new_start][new_end]=G.arcs[new_end][new_start]=length;printf("路线添加成功!\n");}if(admin_choice==5){break;}}while(1);}if(strcmp(password,user_input_psw)!=0){printf("密码错误! \n");}}if(choice==3){break;}}while(1);return 0;}password.txt⽂件⽤来存放密码sight_data.txt⽂件⽤来存放景点信息:1 ⼤门⼝出⼊学校的必经之路2 ⾏政办公楼学校最⽓派的建筑之⼀3 北区⾦⼯实训中⼼,还有⼏排具有历史沧桑感的教室4 ⼀号教学楼主要有⼩教室,⽤来上英语课和专业课5 ⼆号教学楼主要⽤来上专业课,五六楼有语⾳室6 实验楼学⽣上各种实验课的地点7 三号教学楼有⼤教室,⼀般安排⽤来上基础课8 图书馆学校为同学们提供学习和⾃习的地⽅,也是学校的藏书最多的地⽅9 开⽔房学校唯⼀⼀个为同学提供热⽔的地点10 超市学校唯⼀⼀个中型超市,在这⾥可以买到各种⽣活⽤品11 榴馨苑环境较好的学⽣⾷堂,这⾥因为离⼥⽣公寓较近,所以这个⾷堂⼥⽣较多12 洗浴中⼼环境还⾏就是规模太⼩,每天都是供不应求13 骊秀苑主要经营⾯⾷。

导航代码全

导航代码全

导航代码全/* 第一部分、静态背景颜色*//* 1、首页/店铺动态/其它导航类目的背景色,这里设为红色*/.skin-box-bd .menu-list .link{background:red;}/* 2、所有分类的背景色(最左边的),一样设为红色*/.all-cats .link{background:red;}/* 到这里,发觉右边的颜色还没有变呢,好的,接着下一步*//* 3、导航条整个分类段背景色,还是要设为红色,整体布局好看些*/.skin-box-bd .menu-list{background:red;}/* 注意观察,最右边还有一丝地方没有变*//* 4、导航条背景色(是最底层了吧),修补导航右侧缺口,再设为红色*/.skin-box-bd{background:red;}/* 小结:有点成功感了!换换其它颜色试试看吧*//* 背景色最好搭配页头背景图,才能整体大气美观*//* 第二部分、分隔线、静态文字的颜色*//* 5、首页等分类的右边的分隔线颜色,设为白色*/ .menu-list .menu{border-color:white;}/* 6、所有分类的右边的分隔线颜色,设为白色*/ .all-cats .link{border-color:white;}/* 7、首页/店铺动态/其它导航类目的文字颜色*/ .menu-list .menu .title{color:yellow;}/* 8、所有分类的文字颜色(最左边那个),*/.all-cats .link .title{color:yellow;}/* 小结:其实原来默认文字的颜色也挺好的*//* 第三部分、分类下的颜色*//* 9、二级分类的背景色,设为灰色*/.popup-content{background:gray;}/* 10、三级分类的背景色,我设为深灰色*/.popup-content .cats-tree .snd-pop-inner{background:#504f4f;}/* 11、二级分类的文字颜色,设为黄色*/.popup-content .cat-name{color:yellow;}/* 12、三级分类的文字颜色。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档