回 帖 发 新 帖 刷新版面

主题:[讨论]有关Warshall算法的C程序问题

我最近用C编Warshall算法,虽然可以运行,但是感觉不是很好,请哪为高手指点指点,在下感激不禁啊!原代码:
#include"stdio.h"
#include"conio.h"
#define M 5
void main()
{
int a[100][M];
int i=0,j=0,k,n; clrscr();
while (scanf("%d",&a[i][j])!=EOF)
       {
    j++;
    if(j>=M){i++;j=0;printf("\n");}
       }
for(j=0;j<i;j++)
    for(k=0;k<M;k++)
    if(a[k][j]==1)for(n=0;n<M;n++)a[k][n]=a[k][n]||a[j][n];
for(j=0;j<i;j++) {
    for(k=0;k<M;k++) printf("%d",a[j][k]);
    printf("\n"); }
}

回复列表 (共3个回复)

沙发

请加点注释并且把Warshall算法说说

板凳

不会吧,你是不是学离散的啊?Warshall是用来求传递闭包的,请问你是否知道传递闭包什么?

3 楼

1楼的兄弟怎和我想的一个样呢?
重要的是《数组不那个附值》

我来回复

您尚未登录,请登录后再回复。点此登录或注册