怎样做一个随机邻接矩阵
如何生成一个10x10随机邻接矩阵?邻接矩阵的意思是矩阵中只有0和1,矩阵的对角线必须是0.如果矩阵中有一行或者几行全部是0,那么我需要产生一个在{0,...,9} \ {x}并将x连接到该顶点,但是不能把x连接到自身。这是我写的代码,不过只是写到对角线全为0,请大佬帮帮忙,谢谢
===============================================================================================
#include<stdio.h>
#include<math.h>
#include<stdlib.h>
#define M 10
#define N 10
int main()
{
int i, j;
int G[10][10] = { {0} };
int transpose[10][10];
srand(time(NULL));
for (i = 0; i < M; i++) {
for (j = 0; j < N; j++) {
if (i == j) {
G[i][j] = 0;
}
else {
G[i][j] = rand() % 2;
G[j][i] = G[i][j];
}
}
}
printf("G[%d][%d] is: \n", M, N);
for (i = 0; i < M; i++) {
for (j = 0; j < N; j++) {
printf("%d\t", G[i][j]);
}
printf("\n");
}
system("pause");
return 0;
}