📄 8_2_1.c
字号:
/* ======================================== */
/* 程式实例: 8_2_1.c */
/* 图形的邻接数组表示法 */
/* ======================================== */
int matrix[6][6]; /* 图形的邻接数组 */
/* ---------------------------------------- */
/* 建立图形 */
/* ---------------------------------------- */
void creategraph(int *node,int num)
{
int from; /* 边线的起点 */
int to; /* 边线的终点 */
int i;
for ( i = 0; i < num; i++ ) /* 读取边线的回路 */
{
from = node[i*2]; /* 边线的起点 */
to = node[i*2+1]; /* 边线的终点 */
matrix[from][to] = 1; /* 存入图形 */
}
}
/* ---------------------------------------- */
/* 主程式: 建立图形后,将邻接数组印出. */
/* ---------------------------------------- */
void main()
{
int node[12][2] = { {1, 2}, {2, 1}, /* 边线数组 */
{1, 3}, {3, 1},
{2, 3}, {3, 2},
{2, 4}, {4, 2},
{3, 5}, {5, 3},
{4, 5}, {5, 4} };
int i,j;
for ( i = 1; i <= 5; i++ )
for ( j = 1; j <= 5; j++ )
matrix[i][j] = 0; /* 清除图形邻接数组 */
creategraph(node,12); /* 建立图形 */
printf("图形的邻接数组内容:\n");
for ( i = 1; i <= 5; i++ )
{
for ( j = 1; j <= 5; j++ )
printf(" %d ",matrix[i][j]); /* 印出数组内容 */
printf("\n"); /* 换行 */
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -