编写一函数,将一个3×3的整型二维数组行列互换

编写一函数,将一个3×3的整型二维数组行列互换

#include <stdio.h>
void change(int a[3][3])
{
int i,j,temp;
for(i=0;i<3;i++)
for(j=0;j<i;j++)
{
temp=a[i][j];
a[i][j]=a[j][i];
a[j][i]=temp;
}
}//函数change即为满足题目要求的函数
//以下是主函数
void main()
{
int i,j,a[3][3];
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
change(a);
for(i=0;i<3;i++)
{
printf("\n");
for(j=0;j<3;j++)
printf("%d ",a[i][j]);
}
}

运行示例:

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-03-09
package com.minrisoft;public class wky { public static void main(String[] args) { int arr[][]= new int[][] { {11,22,33},{44,55,66},{77,88,99} }; System.out.println("行列互换前: "); printArray(arr); int arr2[][]= new int [arr.length][arr.length]; for (int i=0;i<arr.length;i++) { for (int j=0;j< arr[i].length;j++) { arr2[i][j]=arr[j][i]; } } System.out.println("行列互换后: "); printArray(arr2); } private static void printArray(int[][] arr) { for(int i=0;i<arr.length;i++) { for (int j = 0; j < arr.length; j++) { System.out.print(arr[j][i] + " "); } System. out .println();}}}