#define N 3
int array[N][N];
convert(array)
int array[N][N];
{int i,j,t;
for (i=0;i<N;i++)
for(j=i+1;j<N;j++)
{t=array[i][j];
array[i][j]=array[j][i];
array[j][i]=t;
}
}
main()
{int i,j;
printf("\nPlease input number of array:\n");
for(i=0;i<N;i++)
for(j=0;j<N;j++)
scanf("%d",&array[i][j]);
printf("The array is :\n");
for(i=0;i<N;i++){ for(j=0;j<N;j++)
printf("%5d",array[i][j]);
printf("\n");
}
convert(array);
printf("The new array is:\n");
for(i=0;i<N;i++)
{ for(j=0;j<N;j++)
printf("%5d",array[i][j]);
printf("\n");
}
}
哪位能够逐行详细解释一下这个代码,和讲一下相关知识点🙏
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- CSDN专家-sinJack 2022-03-18 23:20关注
输入3行3列的矩阵,然后行列转换。
#define N 3 int array[N][N];//定义二维数组 convert(array)//对二维数组进行行列转换 int array[N][N]; {int i,j,t; for (i=0;i<N;i++)//循环二维数组 for(j=i+1;j<N;j++) //循环二维数组 {t=array[i][j];//临时变量接收当前二维数组元素值 array[i][j]=array[j][i];//进行交换 array[j][i]=t; } } main() {int i,j; printf("\nPlease input number of array:\n"); for(i=0;i<N;i++)//遍历二维数组 for(j=0;j<N;j++) scanf("%d",&array[i][j]);//对二维数组中元素进行赋值 printf("The array is :\n"); for(i=0;i<N;i++){ for(j=0;j<N;j++) printf("%5d",array[i][j]);//输出交换前的二维数组元素 printf("\n"); } convert(array);//调用交换函数 printf("The new array is:\n"); for(i=0;i<N;i++) { for(j=0;j<N;j++) printf("%5d",array[i][j]);//输出行列交换后的二维数组元素值 printf("\n"); } }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录