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("graph is:\n");
for(i=1;i<=5;i++)
{for(j=1;j<=5;j++)
printf("%d ",matrix[i][j]);
printf("\n");}
getch();
}
====================================================
编译出现这一句:
警告 8_2_1.c 42: 指针转换后指向其它类型在 main 函数中
=======================================================
还有这个程序时有结果的。
有一点不是很明白:如何执行的?
creategraph函数的参数是:int *node,int num
怎么在main函数中creategraph的参数是:node,12呢?这时时如何执行的呢?
指针这里很不明白,详细跟我说一下,谢谢。。
把执行的过程说一下行不?
一小步。
波斯汪
倚天杖