C语言:写一个函数,实现3*3矩阵的转置(指针)

这篇具有很好参考价值的文章主要介绍了C语言:写一个函数,实现3*3矩阵的转置(指针)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

分析:

    在主函数 main 中,定义一个 3x3 的整型数组 a,并定义一个指向整型数组的指针 p。然后通过循环结构和 scanf 函数,从标准输入中读取用户输入的 3x3 矩阵的值,并存储到数组 a 中。
    接下来,调用 move 函数,传递给它整型数组 a 的地址,即 a 数组的首地址。move 函数的目的是对输入的矩阵进行转置操作,即行列互换。在 move 函数中,使用两重循环遍历数组中的元素,并通过指针操作实现数组元素值的互换,从而实现矩阵的转置。
    最后,程序输出转置后的矩阵,同样使用循环和指针操作来访问数组中的元素,并通过 printf 函数将每个元素的值输出到屏幕上。

代码:

#include<stdio.h>
void move(int (*p)[3])
{
	int i,j,temp;
    for(i=0;i<3;i++)
	 for(j=0;j<i;j++)
	 {
 		temp=*(*(p+i)+j);
 		*(*(p+i)+j)=*(*(p+j)+i);
 		*(*(p+j)+i)=temp;
 	 }
}
int main()
{
	int a[3][3];
	int (*p)[3],i,j,temp;
	p=a;
	printf("input:\n");
	for(i=0;i<3;i++)
	 for(j=0;j<3;j++)
	 scanf("%d",&a[i][j]);
     move(p);
	 printf("output:\n");
    for(i=0;i<3;i++)
     {
     	for(j=0;j<3;j++)
	    printf("%3d ",*(*(p+i)+j));
     	printf("\n");
     } 
	 return 0; 
}

运行结果:

C语言:写一个函数,实现3*3矩阵的转置(指针),C语言入门,c语言文章来源地址https://www.toymoban.com/news/detail-753743.html

到了这里,关于C语言:写一个函数,实现3*3矩阵的转置(指针)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数据结构·练习·三元组表法实现稀疏矩阵的转置

    一、问题描述 一个mxn的矩阵A,它的转置矩阵B是一个nxm矩阵,且A[i][j]=B[j][i],0=i=m-1,0=j=n-1,即A的行是B的列,A的列是B的行。 用三元组表对稀疏矩阵进行压缩存储,再进行时间复杂度O(n)的快速转置,最后输出稀疏矩阵。 其中m=4,n=5 二、算法概述 1、问题分析 1)压缩 2)转置

    2024年02月04日
    浏览(35)
  • 矩阵转置(函数)(C语言实现)

    【题目描述】 写一个函数,将一个n*n(n10)的二维数组进行转置,即行列交换。要求在主函数中完成输入和输出。 【输入说明】 输入第一行只包括1个数字,表示n,接下来有n行,每行有n个整数。 【输入样例】 3 1 2 7 3 4 8 5 6 9 【输出样例】 1 3 5 2 4 6 7 8 9 代码实现 #inclu

    2024年02月01日
    浏览(87)
  • 矩阵的转置

    题目: 给你一个二维整数数组 matrix , 返回 matrix 的 转置矩阵 。 示例 1:

    2024年02月12日
    浏览(30)
  • 矩阵的转置T和共轭转置H

    矩阵 G G G 的转置 G T G^T G T 和共轭转置 G H G^H G H 在数学中表示不同的操作: 转置 G T G^T G T : 转置是指将矩阵的行和列互换得到的新矩阵。 对于实数矩阵,转置是指将矩阵中的行变为相应的列。 对于复数矩阵,转置同样是将矩阵中的行变为相应的列。 在转置中,并不改变矩

    2024年02月03日
    浏览(42)
  • pytorch中的矩阵的转置问题

    我在我的pytorch专栏发布了一期pytorch入门之tensor,介绍了torch.tensor()的一些创建方式和常用方法,其中就有矩阵的转置方法----tensor.t()、tensor.transpose()和tensor.permute()。我只是用少量语言和代码介绍了这三种方法的用法,但其中的转置原理没有说清。今天咱们就来絮叨絮叨~ 相信

    2023年04月08日
    浏览(24)
  • 【python】python求解矩阵的转置(详细讲解)

    👉博__主👈:米码收割机 👉技__能👈:C++/Python语言 👉公众号👈:测试开发自动化【获取源码+商业合作】 👉荣__誉👈:阿里云博客专家博主、51CTO技术博主 👉专__注👈:专注主流机器人、人工智能等相关领域的开发、测试技术。 求一个矩阵的转置 示例1: 输入:[[1, 2

    2024年02月06日
    浏览(31)
  • C++数据结构 矩阵的转置、镜像及旋转

    C++ 中的矩阵是一种二维数组,用于存储数值数据。矩阵可以用于存储图像数据,以及科学和工程计算中的数据。 常用于以下场景: 数学运算:矩阵乘法、行列式计算、特征值分解等。 图像处理:图像缩放、旋转、颜色变换等。 矩阵分析:因子分析、主成分分析、协方差分

    2024年02月11日
    浏览(40)
  • MATLAB:矩阵 矩阵的秩,矩阵的逆矩阵,矩阵的转置,矩阵每个元素减一,矩阵元素变换

    1.矩阵 A=[1,2,3;4,5,6;7,8,9]/A=[1 2 3;4 5 6;7 8 9](分号与空格用于区分每行之间的元素,分号区分行)   2.矩阵每个元素减一 B=A-1 3.矩阵元素变换 需要某一行或者某一列为0,可以用“:”代表一行 如A(:,3)代表第三列赋值为零    A( 3,:)代表第三行赋值为零     4.矩阵的秩

    2024年02月11日
    浏览(38)
  • 5.利用matlab完成 符号矩阵的转置和 符号方阵的幂运算(matlab程序)

    1. 简述        Matlab符号运算中的矩阵转置 转置向量或矩阵 B = A.\\\' B = transpose(A) 说明 B = A.\\\' 返回 A 的非共轭转置,即每个元素的行和列索引都会互换。如果 A 包含复数元素,则 A.\\\' 不会影响虚部符号。例如,如果 A(3,2) 是 1+2i 且 B = A.\\\',则元素 B(2,3) 也是 1+2i。 B = transpose(A) 是执

    2024年02月13日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包