使用C++编程,希望编写函数实现3*3矩阵第一行和第三行交换。

使用C++编程,希望编写函数实现3*3矩阵第一行和第三行交换。不知道函数的输入和返回值怎么写,也不知道怎么调用
int main()
{
int a[3][6]={{1,2,3,1,0,0},{2,4,5,0,1,0},{3,5,6,0,0,1}};
int k=0,r=2;
a=exchange(a,k,r);
return 0;
}
int exchange(int a[3][6],int r,int k)
{
int b[6],i;
for(i=0;i<6;i++)
{
b[i]=a[r][i];
}
for(i=0;i<6;i++)
{
a[r][i]=a[k][i];
}
for(i=0;i<6;i++)
{
a[k][i]=b[i];
}
return a;
}
求帮忙修改一下。帮忙给我改成正确的就行,我可以通过正确答案弄明白为什么。谢谢

第1个回答  2015-10-30
这个很简单了,直接声明一个二维数组,转置时只需将a[i][j]与a[j][i]交换就可以了。追问

额,不知道你有没有仔细看...
首先我不是求转置是将行列变换。
其次我不明白的地方是二维数组如何进行函数调用。而不是简单地将数组进行变换。

使用C++编程,希望编写函数实现3*3矩阵第一行和第三行交换。
这个很简单了,直接声明一个二维数组,转置时只需将a[i][j]与a[j][i]交换就可以了。

C++题目: 写一个函数将一个3*3的整型矩阵转置。
1、首先在编辑器中准备好一个空白的c语言文件,引入C语言标准库,在main函数中定义一个3x3阶矩阵以及循环体中要用的变量i和j,以及一个用来交换数据的临时变量tmp,然后下一步就可以开始编写处理转置的部分了:2、二维数组需要用两层循环输出,而算法是将一个3x3阶矩阵转置时,只需将主对角线右上方的...

c++程序设计编写程序,实现矩阵(3行3列)的转置(即行列互换)
include <iostream> using namespace std;void main(){ double a[3][3];\/\/矩阵3行3列 double b[3][3];\/\/转置之后的矩阵 int i,j;for(i=0;i<3;i++){ for(j=0;j<3;j++){ cin>>a[i][j];} } for(i=0;i<3;i++){ for(j=i;j<3;j++){ b[i][j]=a[j][i];b...

编写程序,实现矩阵(3行3列)的转置(即行列互换)
cout<<"转置后的矩阵为:"<<endl;for(int c=0;c<3;c++){ for(int d=0;d<3;d++){ cout<<b[c][d]<<" ";p++;if(p%3==0)cout<<endl;} } }

编写程序,实现矩阵(3行3列)的转置(即行列互换)。
int main(){ void merg(int arry[3][3]);int a[3][3],i,j;for(i=0;i<N;i++)for(j=0;j<N;j++){ scanf("%d",&arry[i][j]);} printf("原始的矩阵为:\\n");for(i=0;i<N;i++){ for(j=0;j<N;j++){ printf("%d ",arry[i][j]);} printf("\\n");} print...

c++开发3×3矩阵类Matrix3,以及实现相关操作
include <string.h> using namespace std;class Matrix3 { public:Matrix3();Matrix3(const double arr[][3]);Matrix3(const Matrix3& mat);Matrix3& operator= (const Matrix3& mat);~Matrix3();Matrix3 operator+ (const Matrix3& mat) const;Matrix3 operator- (const Matrix3& mat) ...

c++编写测试将3*3矩阵用指针转置
void zhuanzhi(int num[3][3]){ int i,j,temp;for(i=0;i<3;i++)for(j=0;j<3;j++)if(j>i){ temp=num[i][j];num[i][j]=num[j][i];num[j][i]=temp;} } void main(){ int i,j,num[3][3];printf("input 9 numbers:\\n");for(i=0;i<3;i++)for(j=0;j<...

c语言:写一个函数,将输入的3*3的整形矩阵进行转置 用函数
int main(){ void move(int *s);int a[3][3];int i=0;int *p=&a[0][0];printf("请输入一个3*3的数组:\\n");for(i=0;i<3;i++){ scanf("%d%d%d",&a[i][0],&a[i][1],&a[i][2]);} move(p);printf("转置后的结果:\\n");for(i=0;i<3;i++){ printf("%d...

用C++编写一个求3*3矩阵行列式的值的源代码
int main(){ int a[3][3];int m;int s,s1,s2;for(int i=0;i<3;i++){ for(int j=0;j<3;j++)cin>>a[i][j];} s1=a[0][0]*a[1][1]*a[2][2]+a[0][1]*a[1][2]*a[2][0]+a[0][2]*a[1][0]*a[2][1];s2=a[0][2]*a[1][1]*a[2][0]+a[...

用c++编写程序,编写一个3*3矩阵转置的函数,在main()函数中输入数据
1、打开vs2015,新建一个Windows Form窗体程序或者控制台都可以。2、 定义一个名为array1的数组并赋值:double[,] array1 = new double[3, 3] { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } };。3、右键解决方案下的项目名,添加-类,创建一个名为“turnzhi”的类。4、转置类...

相似回答