关闭

南阳oj 题目29 求转置矩阵问题

标签: 南阳oj题目29 求转置矩阵问题
266人阅读 评论(0) 收藏 举报
分类:

求转置矩阵问题

时间限制:3000 ms  |  内存限制:65535 KB
难度:2
描述
求一个三行三列的转置矩阵。
输入
第一行一个整数n<20,表示有n组测试数据,下面是n组数据;
每组测试数据是九个整型数(每个数都不大于10000),分别为矩阵的的每项;
输出
每组测试数据的转置矩阵;
请在每组输出之后加一个换行
样例输入
2
1  2  3  4  5  6  7  8  9
2  3  4  5  6  7  8  9  1
样例输出
1 4 7
2 5 8
3 6 9

2 5 8
3 6 9
4 7 1


注:此题为:南阳oj 题目29 求转置矩阵问题


说明:转置就是对二维数组位置的调换


已AC源代码:

 
#include<stdio.h>
int b[3][3];
int main()
{
	void ZZ(int a[][3]);
	int a[3][3];
	int *p;
    int i,j,T;
    scanf("%d",&T);
    while(T--)
    { 
    for(i=0;i<3;i++)
	{
		for(j=0;j<3;j++)
		{
            scanf("%d",&a[i][j]);
		}
	}
	ZZ(a);
	for(p=b[0];p<b[0]+9;p++)
	{
		if(p-b[0]!=0&&(p-b[0])%3==0)
		    printf("\n");
		printf("%d ",*p);
	}
	printf("\n\n");
	} 
	return 0;
}

void ZZ( int (*p)[3])
{
    int i,j,t;
    int (*p1)[3];
	p1=b; 
    for(i=0;i<3;i++)
    for(j=0;j<3;j++)
    {
	    *(*(p1+j)+i)=*(*(p+i)+j);
    }
}        


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:70871次
    • 积分:3339
    • 等级:
    • 排名:第10518名
    • 原创:276篇
    • 转载:0篇
    • 译文:0篇
    • 评论:2条
    最新评论