下面是我编写的代码,我不能交换第2列与第4列的位置,哪里错了?
Option Base 1
Private Sub Form_Click()
Dim a(4, 4) As Integer
For i = 1 To 4
For j = 1 To 4
a(i, j) = Val(InputBox("请输入数据"))
Next j
Next i
For i = 1 To 4
For j = 1 To 4
Print a(i, j);
Next j
Print
Next i
For i = 1 To 4
For j = 1 To 4
m = a(1, j)
a(1, j) = a(3, j)
a(3, j) = m
Print a(i, j);
Next j
Print
Next i
For i = 1 To 4
For j = 1 To 4
n = a(i, 2)
a(i, 2) = a(i, 4)
a(i, 4) = n
Print a(i, j);
Next j
Print
Next i
End Sub
同时同样的二维数组我还想知道分别输出各行各列的和的代码。求解大神帮忙啊啊啊啊。
你的那个求和的编程我不太懂,我没有碰到过能解释下嘛?而且我按照你的代码写,运行时说下标越界怎么回事?
追答先看求每行值的和:在i=0时,我求的就是第一行所有数的和,hang_sum[0]初始值为0,让后我通过一个循环
for(int j=0;j
using namespace std;
int main()
{
int a[4][4];
cout>a[i][j];
}
int hang_sum[4]={0,0,0,0};
int lie_sum[4]={0,0,0,0};
for(int i=0;i<4;i++)
for(int j=0;j<4;j++)
{
hang_sum[i]+=a[i][j]; //这是每行值的和
}
for(int j=0;j<4;j++)
for(int i=0;i<4;i++)
{
lie_sum[j]+=a[i][j]; //这是每列值的和
}
for (int i=0;i<4;i++){
for(int j=0;j<4;j++)
{
cout<<a[i][j]<<" ";
}
cout<<hang_sum[i]<<endl;
}
for(int i=0;i<4;i++)
cout<<lie_sum[i]<<" ";
return 0;
}