[求助]这个程序有错,找不到原因
程序运行输出时出错,本来应该输出一个非零值的,但是不知道为什么输出0,帮帮忙告诉我错在哪里,谢谢!#include<stdio.h>
int m[6][6];
void MatrixChain(int *p,int n)
{ int i,j,k,r,t;
for(i=1;i<=n;i++)m[i][i]=0;
for(r=2;r<=n;r++)
for(i=1;i<=n-r+1;i++)
{ j=i+r-1;
m[i][j]=m[i+1][j]+p[i-1]*p[i]*p[j];
for(k=i;k<j;k++)
{ t=m[i][k]+m[k+1][j]+p[i-1]*p[k]*p[j];
if(t<m[i][j])m[i][j]=t;
}
}
}
void main()
{ int p[]={30,35,15,5,10,20};
MatrixChain(p,6);
printf("最少需要 %d 次乘法\n",m[6][6]);
}