📄 generatedeg.cpp
字号:
//输入有向图
#include"ALGraph.h"
using namespace std;
extern int getRightInput(int,int);
void generateDeG(ALGraph &G)
{
//建立有向图
system("cls");
cout<<" 请输入该有向图的信息!"<<endl;
G.kind =1; //有向图
G.arcnum =0;
cout<<"请输入图的顶点数目(2-20): ";
G.vexnum=getRightInput(2,20);
for( int i=0;i<G.vexnum;i++)
{
G.vertices [i].firstarc=NULL;
G.vertices [i].data=i; //顶点的信息就是顶点存取的位置
}
for(i=0;i<G.vexnum;i++)
{
for(int j=0;j<G.vexnum ;j++)
{
if (j==i) continue; // 自己与自己没有关系
cout<<"第"<<i+1<<"个顶点与第"<<j+1<<"个顶点有关系吗?"<<endl;
cout<<"有关系,输入1;没关系,输入0: ";
char relative;
do{
relative=(char)getch();
}while(relative!='0'&&relative!='1');
cout<<relative<<endl;
if(relative=='1')
{
//采用头插法进行链接节点
ArcNode *arcNode=(ArcNode *)malloc(sizeof(ArcNode));
arcNode->nextarc =G.vertices [i].firstarc;
G.vertices [i].firstarc=arcNode;
arcNode->adjvex =j;
G.arcnum ++;
}
}
}
cout<<endl<<"输入结束!"<<endl;
system("pause");
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -