求大佬帮忙解答一下c语言编程题,实在不会啊。

输入矩阵阶数n,给n阶矩阵的元素按行序由一到n*n顺序赋值,然后将其旋转90°,输出旋转后的矩阵。

#include<stdio.h>
int a[100][100];
int n;
void fun()
{
    int i,j;
    for (i = 0; i < n; i++)
    {
        for (j = i + 1; j < n; j++)
        {
            int temp = a[i][j];
            a[i][j] = a[j][i];
            a[j][i] = temp;
        }
    }
    for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			printf("%d ",a[i][j]);
		}
		printf("\n");
	}
}
void main()
{
	int i,j;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			scanf("%d",&a[i][j]);
		}
	}
    fun();
}
int main()
{
	int n,i,j;
	scanf("%d",&n);
	int **p = new int*[n];
	for(i=0;i<n;i++)
	{
		p[i] = new int[n];
		for(j=0;j<n;j++)
			scanf("%d",&p[i][j]);
	}
	int **q = new int*[n];
	for(i=0;i<n;i++)
	{
		q[i] = new int[n];
	}
	for(i=0;i<n;i++)
		for(j=0;j<n;j++)
		{
			q[j][n-i-1] = p[i][j];
		}
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			printf("%d ",q[i][j]);
		}
		printf("\n");
	}
	int kk ;
	scanf("%d",&kk);
	return 0;
}

 

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632