【发布时间】:2020-06-16 05:15:28
【问题描述】:
我需要检查二维数组中第 i 行和第 j 列的总和是否相同,并输出行的 i 和列的 j 和总和。另外我怎样才能像[1][1],[1][2]等一样正常计数。
提前致谢。
这就是我所拥有的,遗憾的是它不起作用
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
int main()
{
int sum1 = 0, sum2 = 0;
int a[2][3];
int i, j;
for (i = 0; i<2; i++)
{
for (j = 0; j<3; j++)
{
printf("a[%d][%d] = ", i, j);
scanf("%d", &a[i][j]);
}
}
for (i = 0; i<2; i++)
{
sum1 = 0, sum2 = 0;
for (j = 0; j<3; j++)
{
sum1 += a[i][j];
sum2 += a[j][i];
}
if (sum1 == sum2)
printf("row is %d and column is %d = %d", i, j, sum1);
}
return 0;
}
【问题讨论】:
-
请详细说明“它不起作用”。输出是什么?您期望相反的输出是什么?为什么?它会崩溃吗?悬挂?蓝屏幕?无限循环?究竟是什么让您认为某些事情不起作用?你调试了吗? ericlippert.com/2014/03/05/how-to-debug-small-programs
-
注意
sum1 += a[i][j]; sum2 += a[j][i];会打破数组边界,数组不是正方形的。 -
不清楚你的意思是什么“我怎样才能像
[1][1],[1][2]等一样正常计数。”你问如何从[1]索引数组?
标签: c arrays sum dimensional