自己写的一个C程序,不明白为什么不执行……

来源:百度知道 编辑:UC知道 时间:2024/06/18 15:55:55
自己写了一个ERP的MPS的计算程序,当按要求输入数据后,程序不进行计算,而是停留在那,检测没错误,我用的TC(很老的),曾无数次重装了系统,TC没重装……简单说起来这就是一个2维数组的加减,不知道错在哪,请问高手,这是否是程序的逻辑错误导致的?还是TC问题?还是根本就是一段不完善的程序?
#include <stdio.h>
main()
{int a[8][11];
int i,j,m,n=10;
a[4][1]=15;
a[5][0]=50;
for(i=1;i<=2;i++)
{for(j=1;j<=10;j++)
{printf("shurushuju");
scanf("%d\n",&a[i][j]);
}
printf("\n");
}
for(i=1;i<=10;i++)
{if(i<=3)
a[3][i]=a[2][i];
else if(i<=6)
a[3][i]=max(a[1][i],a[2][i]);
else
a[3][i]=a[1][i];
}
for(j=0;j<=10;j++)
a[5][j++]=a[4][j++]+a[5][j]-a[3][j++];
for(j=1;j<=10;j++)
{ if(a[5][j]<10)
{ for(i=1;i<=10;i++)
{ a[6][j]=n+a[3][j]-a[5][j--];
for(m=1;;i++)
{ if(a[6][j]<=20*m)
a[7][j]=20*m;
}
a[5][j]=a[7]

for(m=1;;i++)
{ if(a[6][j]<=20*m)
a[7][j]=20*m;
}

这个for循环没有判定条件呢,好象是无法跳出循环了

这怎么看,你在不明确的地方用printf语句输入几个结果看看

你的函数 max的返回值没有确定
你该为这个试试
int max(int c,int d)
{ if(c<d)
return(d);
else return(c);
}