编写一个函数(参数用指针)将一个3行3列的二维数组a转置后保存到一个二维数组b, 即将任意一个元素b[row][col]赋值为a[col][row]。转置的举例:1 2 3 转置后变成: 1 4 74 5 6 2 5 87 8 9 3 6 9
1 回答
慕田峪7331174
TA贡献1828条经验 获得超13个赞
//#include "stdafx.h"//vc++6.0加上这一行.
#include "stdio.h"
void myprint(int (*p)[3]){
int i,j;
for(i=0;i<3;i++){
for(j=0;j<3;printf("%3d",p[i][j++]));
printf("\n");
}
}
void mytranspose(int (*p)[3],int (*q)[3]){
int i,j;
for(i=0;i<3;i++)
for(j=0;j<3;q[j][i]=p[i][j++]);
}
int main(void){
int a[3][3]={{1,2,3},{4,5,6},{7,8,9}},b[3][3];
printf("Before the transpose:\n");
myprint(a);
printf("After the transpose:\n");
mytranspose(a,b);
myprint(b);
return 0;
}
- 1 回答
- 0 关注
- 1525 浏览
添加回答
举报
0/150
提交
取消