国内最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2
您当前位置:首页 > php开源 > php教程 > 一些项目――二维数组的置换

一些项目――二维数组的置换

来源:程序员人生   发布时间:2015-07-24 09:43:16 阅读次数:3785次

题目描写

写1个函数,使给定的1个2维数组(3×3)转置,即行列互换。

输入

1个3x3的矩阵

输出

转置后的矩阵

样例输入

1 2 3 4 5 6 7 8 9

样例输出

1 4 7 2 5 8 3 6 9



解答
#include<iostream> using namespace std; void zhuangzhi(int c[3][3]) { int b[3][3],i,j; for(i=0;i<3;i++) for(j=0;j<3;j++) b[j][i]=c[i][j]; for(i=0;i<3;i++) for(j=0;j<3;j++) c[i][j]=b[i][j]; } int main() { int a[3][3]; int i,j; for(i=0; i<3; i++) for(j=0; j<3; j++) cin>>a[i][j]; zhuangzhi(a); for(i=0; i<3; i++) { for(j=0; j<3; j++) cout<<a[i][j]<<" "; cout<<endl; } return 0; }


渐渐发现自己忘记了上学期的1些内容,1开始只想着形参的改变不会影响实参,所以在形参那里各种指针,援用,最后还要取地址甚么的,统统报错。
用了许多办法才知道2维函数本身就是指针,对形参的改变就可以改变实参,虽然不知道为何c=b没有改变。。。。
算是给自己1个警示吧,记得有时间温习前面的内容


生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
关闭
程序员人生