C语言,利用指针将数组的行与列互换 一定要用C语言,谢谢,在线等

 我来答
zhiyyao
2016-05-30 · TA获得超过1911个赞
知道小有建树答主
回答量:645
采纳率:57%
帮助的人:445万
展开全部
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define M 5
#define N 5
void main()
{
 void create(int a[][N]);
 void swap(int **a);
 void show(int (*p)[N]);
 int a[M][N], *p[M], i, j;
 
 create(a);
 for ( i = 0; i < M; i++)
 {
  p[i] = a[i];
  for ( j = 0; j < N; j++)
   printf ("%3d", a[i][j]);
  printf ("\n");
 }
 printf ("\n");
 swap(p);
 printf ("行与列互换后:\n");
 show(a);
}
void create(int a[][N])
{
 int i, j;
 
 srand ((unsigned) time (NULL));
 for ( i = 0; i < M; i++)
  for ( j = 0; j < N; j++)
   a[i][j] = rand () % 100;
}
void swap(int **a)
{
 int i, j, t;
 
 
 for (i = 0; i < M; i++)
  for (j = 0; j < i; j++)
  {
   t = a[i][j];
   a[i][j] = a[j][i];
   a[j][i] = t;
  }
}
void show(int (*p)[N])
{
 int i, j;
 
 for (i = 0; i < M; i++)
 {
  for (j = 0; j < N; j++)
   printf ("%3d", p[i][j]);
  printf ("\n");
 }
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式