请教一个程序题,找错误
这个程序能运行,但的不到任何结果
#include<stdio.h>
main()
{
int a[5][5],b[5][5];
int i,j,k,m,n;
int c;
int count,exam;
int *a1;
int *b1;
int *road;
a1=a[0];
b1=b[0];
road=&c;
printf("input the in the form of:\n");
for(i=0;i<5;i++)
for(j=0;j<5;j++)
scanf("%d",&a[i][j]);
for(i=0;i<25;i++)
*(b1+i)= *(a1+i);
count=1;
do{
exam=0;
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
for(k=0;k<5;k++)
b[i][j]+=a[i][k]*b[k][j];
}
}
for(i=0;i<25;i++)
exam+=*b1+i;
if(exam!=0)
count++;
for(n=0;n<25;n++)
*(road+count+1)+=*(b1+n);
}while(exam!=0);
for(i=0;i<25;i++)
*(road+1)+=*(a1+i);
printf("number of road:");
scanf("%d",&m);
printf("%d",*road+m);
}
求一个图的长度为m的通路数,图是以矩阵形式给出的,用数组表示