C语言 矩阵转置

矩阵转置v1.0(4分)
题目内容:

用二维数组作为函数参数,编程计算并输出n×n阶矩阵的转置矩阵。其中,n的值不超过10,n的值由用户从键盘输入。

程序运行结果示例1:

Input n:3↙

Input 3*3 matrix:

1 2 3↙

4 5 6↙

7 8 9↙

The transposed matrix is:

1 4 7

2 5 8

3 6 9

程序运行结果示例2:

Input n:2↙

Input 2*2 matrix:

1 2↙

4 5↙

The transposed matrix is:

1 4

2 5

输入提示信息:

提示输入矩阵的阶数:“Input n:”

提示输入矩阵数据:“Input %d*%d matrix:\n”

输入格式: “%d”

输出提示信息:“The transposed matrix is:\n”

输出格式:“%4d”

#include<stdio.h>
#define N 10
void extr(int a[][N],int n);
int main(){
    
    
	int n=0;
	printf("Input n:");
	scanf("%d",&n);
	int array[N][N]={
    
    0};
	int number=0;
	printf("Input %d*%d matrix:\n",n,n);
	for(int x=0;x<n;x++)
	{
    
    
		for(int y=0;y<n;y++)
		{
    
    
			number++;
			array[x][y]=number;
			printf("%4d",array[x][y]);

		}
		printf("\n");
		if(n%2==1)
			number=number;
		else
			number+=1;
	}

	printf("The transposed matrix is:\n");

	extr(array,n);
    return 0;
}
void extr(int a[][N],int n)
{
    
    
	for(int m=0;m<n;m++){
    
    
		for(int q=0;q<n;q++)
		{
    
    
			printf("%4d",a[q][m]);
		}
		printf("\n");
	}


}

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/ainuliba/article/details/132793022