但是在刚才那个魔方矩阵的程序里,我在每次的if里面都对i或者j进行了重新赋值,理应不存在溢出这一说。
推荐回答
if(i<1&&j<=n){ //进不来 i初值为1 你用与运算 i<1为假 表达式永远为假啊 i=n; //导致你i不能赋值 应该会溢出吧.. a[i][j]=k; // 你可以设置断点 一点一点跟的啊 很快就能找到哪有错 我现在用C#没有} //C的编译器了 不好调试啊..else if(i<=n&&j>n){ j=1; a[i][j]=k; } else if(i<1&&j>n){ //进不来 j=j-1; a[i][j]=k; } else { if (a[i][j]!=0) a[i][j]=k; else { j=j-1; a[i][j]=k; } }