编写一个函数,使给定的一个n*n矩阵转置,即行列互换./* Note:Your choice is C IDE */#include "stdio.h"void input(int *p,int m,int n){ int i,j;\x09printf("请输入数组:");\x09for(i=0;i
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/30 14:56:56
编写一个函数,使给定的一个n*n矩阵转置,即行列互换./*Note:YourchoiceisCIDE*/#include"stdio.h"voidinput(int*p,intm,intn){inti
编写一个函数,使给定的一个n*n矩阵转置,即行列互换./* Note:Your choice is C IDE */#include "stdio.h"void input(int *p,int m,int n){ int i,j;\x09printf("请输入数组:");\x09for(i=0;i
编写一个函数,使给定的一个n*n矩阵转置,即行列互换.
/* Note:Your choice is C IDE */
#include "stdio.h"
void input(int *p,int m,int n)
{ int i,j;
\x09printf("请输入数组:");
\x09for(i=0;i
编写一个函数,使给定的一个n*n矩阵转置,即行列互换./* Note:Your choice is C IDE */#include "stdio.h"void input(int *p,int m,int n){ int i,j;\x09printf("请输入数组:");\x09for(i=0;i
/*
请输入行、列数为:3 4
请输入数组3×4:
1 2 3 4
5 6 7 8
9 10 11 12
1 2 3 4
5 6 7 8
9 10 11 12
1 5 9
2 6 10
3 7 11
4 8 12
Press any key to continue
*/
#include <stdio.h>#include <stdlib.h>
void input(int **p,int m,int n) {
\x09int i,j;
\x09printf("请输入数组%d×%d:\n",m,n);
\x09for(i = 0;i < m;i++)
\x09\x09for(j = 0;j < n;j++)
\x09\x09\x09scanf("%d",&p[i][j]);
}
void output1(int **p,int m,int n) {
\x09int i,j;
\x09for(i = 0;i < m;i++) {
\x09\x09for(j = 0;j < n;j++)
\x09\x09\x09printf("%5d",p[i][j]);
\x09\x09printf("\n");
\x09}
\x09printf("\n");
}
void output2(int **q,int m,int n) {
\x09int i,j;
\x09for(i = 0;i < n;i++) {
\x09\x09for(j = 0;j < m;j++)
\x09\x09\x09printf("%5d",*(*(q + i) + j));
\x09\x09printf("\n");
\x09}
\x09printf("\n");
}
void zhuanzhi(int **p,int **q,int m,int n) {
\x09int i,j;
\x09for(i = 0;i < m;i++)
\x09\x09for(j = 0;j < n;j++)
\x09\x09\x09*(*(q + j) + i) = *(*(p + i) + j);
}
int main() {
\x09int **a,**b,m,n,i;
\x09printf("请输入行、列数为:");
\x09scanf("%d%d",&m,&n);
\x09a = (int **)malloc(m * sizeof(int));
\x09for(i = 0; i < m; ++i)
\x09\x09a[i] = (int *)malloc(n * sizeof(int));
\x09b = (int **)malloc(n * sizeof(int));
\x09for(i = 0; i < n; ++i)
\x09\x09b[i] = (int *)malloc(m * sizeof(int));
\x09input(a,m,n);
\x09output1(a,m,n);
\x09zhuanzhi(a,b,m,n);
\x09output2(b,m,n);
\x09for(i = 0; i < m; ++i)
\x09\x09free(a[i]);
\x09free(a);
\x09for(i = 0; i < n; ++i)
\x09\x09free(b[i]);
\x09free(b);
\x09return 0;
}