编写并测试3×3矩阵转置函数,使用数组保存3×3矩阵

如题所述

#include <stdio.h>void main()
{
int a[3][3]={1,2,3,4,5,6,7,8,9};
int i,j,t;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",a[i][j]);
printf("\n");
} for(i=0;i<3;i++)
for(j=i;j<3;j++)
t=a[i][j],a[i][j]=a[j][i],a[j][i]=t; printf("\n"); for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",a[i][j]);
printf("\n");
}
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2016-01-04
#include <stdio.h>void main()
{
int a[3][3]={1,2,3,4,5,6,7,8,9};
int i,j,t;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",a[i][j]);
printf("\n");
} for(i=0;i<3;i++)
for(j=i;j<3;j++)
t=a[i][j],a[i][j]=a[j][i],a[j][i]=t; printf("\n"); for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",a[i][j]);
printf("\n");
}
}

编写并测试3×3矩阵转置函数,使用数组保存3×3矩阵
include <stdio.h>void main(){ int a[3][3]={1,2,3,4,5,6,7,8,9};int i,j,t;for(i=0;i<3;i++){ for(j=0;j<3;j++)printf("%d ",a[i][j]);printf("\\n");} for(i=0;i<3;i++)for(j=i;j<3;j++)t=a[i][j],a[i][j]=a[j][i],a[j][i]=t;...

编写3×3矩阵转置 ‘函数’ ,使用数组保存3×3矩阵
\/\/oldMatrix:原来保存矩阵的二维数组 \/\/rows:原来矩阵的行数 \/\/cols:原来矩阵的列数 \/\/newMatrix:保存转置矩阵的二维数组 int trans(char* oldMatrix, int rows, cols, char* newMatrix){ int r, c;if(oldMatrix == NULL || newMatrix == NULL)return -1;for(r = 0; r < rows; ++...

编程求任意读入的3*3矩阵的转置(要求只定义一个数组类型变量)
int main(){ int a[3][3];int i,j;for(i=0;i<3;i++)for(j=0;j<3;j++)scanf("%d",&a[i][j]);for(i=0;i<3;i++){ for(j=0;j<3;j++){ printf("%d ",a[j][i]);} putchar('\\n');} return 0;}

...一个二维数组a[ ][ ]存放3*3矩阵,求它的转置矩阵b[ ][ ]。_百度...
int[][] a = {{1,1,1},{2,2,2},{3,3,3}}; int[][] b = new int[3][3]; System.out.print("初始矩阵:\\n"); for(i=0;i<3;i++) { for(j=0;j<3;j++) { System.out.print(a[i][j]+" "); } System.out.print("\\n"); } System.out.print("转置矩阵:\\n"); for(...

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...

...一个3*3的整形矩阵,调用一个函数,将此矩阵转置,用指针作为函数的形参...
从主程序中输入一个3*3的整形矩阵,调用一个函数,将此矩阵转置,用指针作为函数的形参, 5 #include<stdio.h>intmain(){intfun(int*p[12]);inti,j,n,a[3][3];for(i=0;i<3;i++){for(j=0;j<3;j++){scanf("%d",a+i);}}printf("\\n");for(i=0;i<3;i++){for(j=0;j<3;j++){...

将一个3×3的矩阵转置,用一函数实现
他只是把数组的元素的输出顺序改变,而没有把数组的元素改变位置,他下面定义的函数:void convert(int array[][3]) 也无法实现转置,关键的地方是 for (i = 0; i < 3; ++i)for (j = i+1; j < 3; ++j)j要从i+1开始遍历,否则元素又再次被全部替换回去了,相当于做了无用功。

将一个3x3的矩阵转置,怎样用c语言写?
int main(){ int a[3][3];int*i;for(i=*a;i<*a+9;scanf("%d",i++));\/\/输入矩阵 void trans(int(*p)[3]);\/\/声明转换函数 trans(a);} void trans(int(*p)[3]){ int i,j,t,*k;for(i=0;i<3;i++)for(j=0;j<i;j++){ t=*(*(p+i)+j);*(*(p+i)+j)=*...

C语言,求3×3矩阵的转置矩阵(在自身进行转置)
int main(){ int a1,b1;int a[3][3];int i,j;for(i=0;i<3;i++)for(j=0;j<3;j++)scanf("%d",&a[i][j]);printf("矩阵为\\n");for(i=0;i<3;i++)for(j=0;j<3;j++){ printf("%d ",a[i][j]);if(j==2)printf("\\n");} printf("\\n");for(i=0;i<2;...

用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、转置类...

相似回答