问题描述
解决方案
bool foo()
{
int a[100][100];
int i,j;
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
scanf("%d",a[i][j]);
}
}
int sum = 0;
int sum1 = 0;
for (i = 0; i < n; i++) sum += a[i][0];
for (j = 0; j < n; j++)
{
sum1 = 0;
for (i = 0; i < n; i++) sum1 += a[i][j];
if (sum1 != sum) return false;
sum1 = 0;
for (i = 0; i < n; i++) sum1 += a[j][i];
if (sum1 != sum) return false;
}
sum1 = 0;
for (i = 0; i < n; i++) sum1 += a[i][i];
if (sum1 != sum) return false;
sum1 = 0;
for (i = 0; i < n; i++) sum1 += a[i][n - i];
if (sum1 != sum) return false;
return true;
}
解决方案二:
主程序
int n = 4;
int main()
{
if (foo()) printf("yes"); else printf("no");
}
解决方案三:
初学者?循环还没学呢?好好看书吧,书是根本。
解决方案四:
c语言中二维数组的问题
c语言中二维数组的问题
C语言_二维数组
解决方案五:
这个...用循环判断就好了啊...没有什么太难的地方啊, 就把每一行数据, 每一列, 和两条对角线 分别的和比较就可以了啊..
二维数组的输出也就是一个双重循环的事啊..
时间: 2024-12-03 06:33:53