| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 464 人关注过本帖
标题:指针求解 不知道错哪
取消只看楼主 加入收藏
烟雾中的迷茫
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:621
专家分:1069
注 册:2011-2-9
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:4 
指针求解 不知道错哪
程序代码:
#include<stdio.h>

main()
{
    void array(int x[5][5]);
    int i,j,a[5][5];

    printf("please input array\n");
    for(i=0;i<5;i++)
        for(j=0;j<5;j++)
           scanf("%d",&a[i][j]);

     array(a);
     printf("follows are the array changer\n");
     for(i=0;i<5;i++)
       {
           for(j=0;j<5;j++)
              printf("%3d",a[i][j]);
           printf("\n");
       }


}

void array(int x[5][5])
{
    int i,j,*h=x[0],*k[25],t,l=0,m,*n;
     for(i=0;i<5;i++)                              /*must analyze clearly*/
        for(j=0;j<5;j++)
          if(*h<*(x[i]+j+1))                      /*if this line change 'h' which in the bracket into 'x[i]+j' ,it would be wrong */
              h=x[i]+j+1;

     for(i=0;i<5;i++)                           /*get all of the elements' address*/
        for(j=0;j<5;j++)
          k[l++]=&x[i][j];

      for(i=0;i<25;i++)                       /*arrange the address*/
      {
          m=i;
          for(j=0;j<25;j++)
              if(*k[m]>*k[j])
                 m=j;
           n=k[i];
           k[i]=k[m];
           k[m]=n;
        }

     t=x[2][2]; x[2][2]=*h; *h=t;
     t=x[0][0]; x[0][0]=*k[0]; *k[0]=t;
     t=x[4][0]; x[4][0]=*k[1]; *k[1]=t;
     t=x[0][4]; x[0][4]=*k[2]; *k[2]=t;
     t=x[4][4]; x[4][4]=*k[3]; *k[3]=t;
}
一个5×5矩阵 把最大的数放在中间 最小的四个数按照从上倒下 左到右顺序放置
2011-05-21 12:21
烟雾中的迷茫
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:621
专家分:1069
注 册:2011-2-9
收藏
得分:0 
en恩就是上面 老兄得之啊
2011-05-21 15:03
烟雾中的迷茫
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:621
专家分:1069
注 册:2011-2-9
收藏
得分:0 
回复 4楼 其实、不想说
不是转置  漏下的理解了  
2011-05-21 15:14
烟雾中的迷茫
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:621
专家分:1069
注 册:2011-2-9
收藏
得分:0 
  就是  例如  1   2   3   4   5         变为  1  22  5  26  3
                6   7   8  9   10               6  7   8   9   10
                11  12  13  14  15              11  12  13  14  15
                16  17  18  19  20              16  17  18  19  20
                22  23   24  25 26              2  23  24  25  4
就是这样的
2011-05-21 15:18
烟雾中的迷茫
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:621
专家分:1069
注 册:2011-2-9
收藏
得分:0 
回复 5楼 Toomj
其实 这个不要改动 应为函数传递的是地址  这样写都一样
2011-05-21 15:19
快速回复:指针求解 不知道错哪
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022848 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved