| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 751 人关注过本帖
标题:[指针] 实在是不好意思了,我又来了!指针真的很让人很头疼~~
取消只看楼主 加入收藏
C梦天下
Rank: 2
等 级:论坛游民
帖 子:53
专家分:38
注 册:2011-4-10
结帖率:57.14%
收藏
已结贴  问题点数:20 回复次数:8 
[指针] 实在是不好意思了,我又来了!指针真的很让人很头疼~~
本以为在纸上调试过了
开开心心写完的代码,结果一上机调试,就是这样那样的麻烦!
心情实在是不爽~~ 纠结死了
我恨指针~~
程序代码:
/*题目,有一个5*5的矩阵,要求将4个最小的放在四个角上,最大的放在中间,也就是‘12’的位置,然后输出 */
#include "stdio.h"
#include "stdlib.h"
int main()
{
    void change(int *);
    int i,j=1,*p;
    p=(int *)malloc(sizeof(int)*25);
    if(NULL==p) return 0;
    printf("请输入数组的各个元素:");
    for(i=0;i<25;i++)
    {
        printf("请输入a[%d]:",i+1);
        scanf("%d",p+i);
    }
    change(p);
    printf("改变之后的数组为  ");
    for(i=0;i<25;i++)
    {
        printf("a[%d]:",i+1);
        printf("%d",*(p+i));
        j++;
        if(j%5==0)
        {
            printf("\n");
            j=1;
        }
    }
    free(p);
    return 0;
}
void change(int *p)
{
    int j,t;
    int min,max;
    min=0;
    max=0;
     for(j=1;j<25;j++)   /*find the max and min */
     {
         if(*(p+min)>*(p+j))
             min=j;
         if(*(p+max)<*(p+j))
             max=j;
     }
     t=*(p+min);       /*change min and max*/
     *(p+min)=*p;
     *p=t;
     t=*(p+max);
     *(p+max)=*(p+12);
     *(p+12)=t;
     min=1;
     for(j=1;j<25;j++) 
         if(*(p+min)>*(p+j))
             min=j;
    t=*(p+min);
    *(p+min)=*(p+4);
    *(p+4)=t;
    min=1;
    for(j=1;j<25;j++)
    {
        if(j==4||j==1)
            continue;
        else if(*(p+min)>*(p+j))
            min=j;
    }
    t=*(p+min);
    *(p+min)=*(p+20);
    *(p+20)=t;
    min=1;
    for(j=1;j<25;j++)
    {
        if(j==4||j==20||j==1)
            continue ;
        else if(*(p+min)>*(p+j))
            min=j;
    }
    t=*(p+min);
    *(p+min)=*(p+24);
    *(p+24)=t;
}

     


[ 本帖最后由 C梦天下 于 2011-4-13 20:06 编辑 ]
搜索更多相关主题的帖子: 就是这样 心情 
2011-04-13 19:07
C梦天下
Rank: 2
等 级:论坛游民
帖 子:53
专家分:38
注 册:2011-4-10
收藏
得分:0 

人品不行~
只能人工
2011-04-13 19:14
C梦天下
Rank: 2
等 级:论坛游民
帖 子:53
专家分:38
注 册:2011-4-10
收藏
得分:0 
不至于吧
 没人理会带星星的东东么?

2011-04-13 19:52
C梦天下
Rank: 2
等 级:论坛游民
帖 子:53
专家分:38
注 册:2011-4-10
收藏
得分:0 
回复 4楼 njkido
那个地方是复制的时候一个疏忽~~
不好意思,没养成良好的习惯~
2011-04-13 20:07
C梦天下
Rank: 2
等 级:论坛游民
帖 子:53
专家分:38
注 册:2011-4-10
收藏
得分:0 

继续。。
2011-04-13 21:01
C梦天下
Rank: 2
等 级:论坛游民
帖 子:53
专家分:38
注 册:2011-4-10
收藏
得分:0 

继续,我就不相信没有好心人了
2011-04-13 21:10
C梦天下
Rank: 2
等 级:论坛游民
帖 子:53
专家分:38
注 册:2011-4-10
收藏
得分:0 

。。
2011-04-13 21:21
C梦天下
Rank: 2
等 级:论坛游民
帖 子:53
专家分:38
注 册:2011-4-10
收藏
得分:0 
回复 9楼 王立帅
这个不是排序~
2011-04-13 21:29
C梦天下
Rank: 2
等 级:论坛游民
帖 子:53
专家分:38
注 册:2011-4-10
收藏
得分:0 
回复 11楼 王立帅
小王
你测试出了max在中间么?
我也改进了。
4个角搞定了
对于max
好像是判断条件出错了
或者是别的什么原因,
正在改进。
 = =
2011-04-13 21:54
快速回复:[指针] 实在是不好意思了,我又来了!指针真的很让人很头疼~~
数据加载中...
 
   



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

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