C语言编程实现2*3的矩阵转置

C语言编程实现2*3的矩阵转置,第1张

#include<iostream>

usingnamespacestd;

voidzhuangzhi(inta[3][3])

{intm,n,i;

for(m=0;m<2;m++)

for(i=0;i<3;i++)

{if(m!=1||i!=0)

{n=a[i][m];

a[i][m]=a[m][i];

a[m][i]=n;

intmain()

inta[3][3];

inti,j;

for(i=0;i<3;i++)

for(j=0;j<3;j++)

cin>>a[i][j];

zhuangzhi(a);

for(i=0;i<3;i++)

for(j=0;j<3;j++)

cout<<a[i][j]<<"";

cout<<endl;

return0;陵旅

cout&lt&lt"处理后的矩阵:"&lt&ltendl

for(i=0i&lt3i++)//输出处理后的矩阵

for(j=0j&lt3j++)

cout&lt&ltsetw(5)&lt&lta&lti&gt[j]

cout&lt&ltendl

return0;

//交换函数

voidmove(int*pointer)

inti,j,t;

for(i=0i&lt3i++)

for(j=ij&lt3j++)

t=*(pointer+3*i+j);//这是关键将矩阵转置的条件

*(pointer+3*i+j)=*(pointer+3*j+i);

*(pointer+3*j+i)=t;

运行效果:

扩展资料:

在C语言或C++中,会把用来#include的文件的扩展名叫.h,称其为头文件。

#include文件的目的做汪伏就是把多个编译单元(也就是c或者cpp文件)公用的内容,单独放在一个文件里减少整体代码尺寸;或者提供跨工程公共代码。在现行的c++版本中,应用这个头文件应是#include<stdio.h>

stdio 就是指 “纯携standard input &output"(标准输入输出)所以,源代码中如用到标准输入输出函数时,就要包含这个头文件!

例如c语言中的 printf("%d",i)scanf("%d",&i)等函数。

以下是使用C语言将3x5矩阵进行转置的程序

```c

#include <stdio.h>

int main() {

int a[3][5] = {{1, 2, 3, 4, 5}, {6, 7, 8, 9, 10}, {11, 12, 13, 14, 15}}

int transposed[5][3]

// 对矩阵进行转置

for (int i = 0i <3i++) {

for (int j = 0j <5j++) {

transposed[j][i] = a[i][j]

}

}

// 输出转置后的矩阵

printf("转置后的矩阵:\n")

for (int i = 0i <5i++) {

for (int j = 0j <3j++) {

printf("%d\t", transposed[i][j])

}

printf("侍没\n")

}

return 0

}

```

程序中定义了一个3x5的二维数组a,用于存储原始矩阵的数据;同时定义了另一个5x3的二维数组transposed,用于存储转置皮谈模后的矩阵。程序通过两层循环遍历原始矩阵a,并将其转置后存储到数组transposed中。最后,程序输出转置后的矩阵。

请注意,在实际编写代码时,可以根据具体情况调整矩阵的大小和数据类型等参数,从而实现对燃缓任意维度的矩阵进行转置的功能。

VB源程序如下:

Option Base 1

Private Sub Command1_Click()

Dim A(5, 5) As Integer, B(5, 5) As Integer

For x = 1 To 弊雀5

  For y = 1 To 5

      A(x, y) = Int(10 + Rnd * 乱卜慧90) '随机产生两位数的整数

      Print A(x, y) '输出

  Next

  Print

Next

Print

For x = 1 To 5

  For y = 1 To 5

      B(x, y) = A(y, x) '转置

      Print B(x, y) '输出

  Next

  Print

Next

End Sub

程序输出结果如下:

扩展资料:

VB:编写程序,实现如下规律的5*5矩阵哗答存入数组,并输出该数组

Private Sub Command1_Click()

Dim a(1 To 6, 1 To 6) As Integer

For i = 1 To 5

For j = 1 To 5

tmp = 99

If i <tmp Then

tmp = i

End If

If j <tmp Then

tmp = j

End If

If 6 - i <tmp Then

tmp = 6 - i

End If

If 6 - j <tmp Then

tmp = 6 - j

End If

a(i, j) = tmp

Next j

Next i

For i = 1 To 5

For j = 1 To 5

Picture1.Print Tab(j * 5)a(i, j)

Next j

Picture1.Print

Next i

End Sub

程序输出结果如下:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12382308.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存