C程序运行中途“停止”
VC环境下; 程序没报错,能运行,但运行到某个语句就“好像”不执行下面的语句了,前面的运行结果能正确输出,但后面的语句好像是被注释了一样。不用麻烦大家去细看我那无语的程序,只是想向大家请教一下这可能是什么原因?是我后面的语句编写的有问题,还是其它?程序摆上,供大家参考(我在上面标记了运行“停止”的位置);
程序代码:
#include <stdio.h> #define N 4 int main () { int i,j,k,a,sum,ca=1,cb=1,sa=0,sb=0; int A[N][N]; for (i=0;i<N;i++) { for (j=0;j<N;j++) scanf("%d",&A[i][j]); } for (i=0;i<N;i++) { for (j=0;j<N;j++) printf("%4d",A[i][j]); printf("\n"); } /*程序运行到这,并输出了相应的结果,但之后的运行结果就不出现了*/ for (a=0;a<N;a++) { for (i=0;i<N;i++) { j=i+a; if (j<N) ca=ca*A[i][j]; else while(i<N-1) for (k=0;k<a;k++) ca=ca*A[i][k]; } sa+=ca; } for (a=0;a<N-1;a++) { for (i=0;i<4;i++) { j=N+a-i-1; if(j>=a) cb=cb*A[i][j]; else { while (i<N-1) for(k=a;k>=0;k--) cb=cb*A[k][a-k]; } } sb+=cb; } sum=sa+sb; printf("%d\n",sum); return 0; }