注册 登录
编程论坛 C++教室

[求助]麻烦解答下此C++程序..

q328640533 发布于 2007-10-16 13:54, 444 次点击
阅读下列程序并回答问题。
#include<iostream.h>
void main()
{
int s[4][4],i,j,k;
for(i=0;i<4;i++)
for(j=0;j<4;j++)
s[i][j]=i-j;
for(i=0;i<3;i++)
for(j=i+1;j<4;j++)
{
k=s[i][j];
s[i][j]=s[j][i];
s[j][i]=k;
}
for(i=0;i<4;i++)
{
cout<<"\n";
cout<<s[i][j];
}
}
问题:(1)分析并说明程序的运行结果。
(2)若将程序中的for(j=i+1;j<4;j++)改为for(j=0;j<3-i;j++)程序的运行结果是什么。
7 回复
#2
q3286405332007-10-16 14:07
我运行了一下,却不知道结果为什么而得.还有改的哪个是什么意思也不了解..有谁知道吗?
#3
heyyroup2007-10-16 14:13
对称矩阵的转置
#4
heyyroup2007-10-16 14:14
for(i=0;i<4;i++)
{
cout<<"\n";
cout<<s[i][j];
}
这里好像漏了点东西吧,我想是不是这个
for(i=0;i<4;i++)
for(j=0;j<4;j++)
{
cout<<"\n";
cout<<s[i][j];
}
#5
q3286405332007-10-16 14:17
回复:(heyyroup)for(i=0;i

恩 谢谢啊 我说怎么不出正确结果呢 呵呵

#6
q3286405332007-10-16 14:20
回复:(heyyroup)对称矩阵的转置
能不能逐步的给我解释下啊..我刚学C++,不明白,谢谢了!
#7
從霝開匙2007-10-16 14:28
#include<iostream.h>
void main()
{
int s[4][4],i,j,k;
for(i=0;i<4;i++)
for(j=0;j<4;j++)
s[i][j]=i-j;//给s[i][j]赋值
for(i=0;i<3;i++)
for(j=i+1;j<4;j++)
{
k=s[i][j];
s[i][j]=s[j][i];
s[j][i]=k;//将s[i][j]和s[j][i]的值互换
}
for(i=0;i<4;i++)
for(j=0;j<4;j++)
{
cout<<"\n";
cout<<s[i][j];//输出s[i][j]
}
}

[此贴子已经被作者于2007-10-16 14:28:49编辑过]

#8
q3286405332007-10-16 14:32
回复:(從霝開匙)#includevoid ...
领悟了...谢谢...
1