鱼C论坛

 找回密码
 立即注册
查看: 3467|回复: 3

求解这段代码的意思

[复制链接]
发表于 2012-8-10 12:35:59 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 帕尼君 于 2012-8-10 23:03 编辑

老实说 不大明白这段代码的意思 我知道是将二维数组行列颠倒,可是分散下来就不大明白了
上代码 希望能一句一句讲    看看我说的对不对
  1. #include<stdio.h>
  2. void main()

  3. {

  4. int a[2][3]={{1,2,3},{4,5,6}};

  5. int b[3][2],i,j;

  6. printf("array a:\n");

  7. for(i=0;i<=1;i++) //为了让一维自增

  8. {

  9. for(j=0;j<=2;j++) //为了让二维自增

  10. {

  11. printf("%5d",a[i][j]); //5位限制,显示二维数组a[i][j]且a[i][j]赋值于b[j][i]

  12. b[j][i]=a[i][j];

  13. }

  14. printf("\n"); //回车

  15. }

  16. printf("array b:\n");

  17. for(i=0;i<=2;i++)

  18. {

  19. for(j=0;j<=1;j++)

  20. printf("%5d",b[i][j]);

  21. printf("\n"); //同上

  22. }

  23. }

复制代码






小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-8-10 12:55:33 | 显示全部楼层
a[i][j]=b[j][i]就是把a的横行赋给b的纵行,你假设你是编译器,一步一步体会,一步一步打印结果。
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-8-13 13:41:38 | 显示全部楼层
这里就是用b[j][i]=a[i][j];作交换,行换成列,列换作行
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-9-16 06:26:13 | 显示全部楼层
这个应该很好理解的。你把 i,j 在心里慢慢递增,想想结果就行了。
小甲鱼最新课程 -> https://ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-11-14 15:12

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表