| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 908 人关注过本帖
标题:用指针,将输入的数字从大到小排列
只看楼主 加入收藏
godmaysmile
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-4-10
收藏
 问题点数:0 回复次数:5 
用指针,将输入的数字从大到小排列
#include "stdio.h"
#define N 5
void main()
{ int a[N]={5,8,6,1,2} ,*p,*p1,temp;
  p=a;
  for(;p<a+N-1;p++)
  {
      for(p1=a+N-1;p1>p;p1--)
      {  
          if(*p1>*(p1-1))
         {
          temp=*p1;
         *p1=*(p1-1);
         *(p1-1)=temp;
         }
        }
    }
   for(p=a;p<a+N;p++)
           printf("%-4d",*p);
}

在yd4433的帮助下搞定了
冒泡法
有需要大家可以m我,一起去发现问题,解决问题

[[it] 本帖最后由 godmaysmile 于 2008-4-10 20:24 编辑 [/it]]
搜索更多相关主题的帖子: 指针 排列 数字 输入 
2008-04-10 17:01
yd4433
Rank: 1
等 级:新手上路
帖 子:404
专家分:0
注 册:2008-3-9
收藏
得分:0 
以前写的指针冒泡 希望对你有帮助

#define N 5
void main()
{ int a[N]={5,8,6,1,2} ,*p,*p1,temp;
  p=a;
  for(;p<a+N-1;p++)
  {
      for(p1=p;p<a+N;p++)
      {  if(*p1<*(p1+1))
         {
          temp=*p1;
         *p1=*(p1+1);
         *(p1+1)=temp;
         }
        }
    }
   for(p=a;p<a+N;p++)
           printf("%-4d",*p);
}

------...-.-..-...-----........-------.......----.....------....||- - !
2008-04-10 17:12
godmaysmile
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-4-10
收藏
得分:0 
不知道为什么?

[[it] 本帖最后由 godmaysmile 于 2008-4-10 18:49 编辑 [/it]]
2008-04-10 18:26
godmaysmile
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-4-10
收藏
得分:0 
这道题我是弄不出来了
2008-04-10 18:48
bianfeng
Rank: 1
等 级:新手上路
帖 子:199
专家分:0
注 册:2007-11-28
收藏
得分:0 
越界了
2008-04-10 19:02
yd4433
Rank: 1
等 级:新手上路
帖 子:404
专家分:0
注 册:2008-3-9
收藏
得分:0 
hehe  迷糊了把错的发给你了 这个是我写的  你参考下
#define N 5
void main()
{ int a[N]={5,8,6,1,2} ,*p,*p1,temp;
  p=a;
  for(;p<a+N-1;p++)
  {
      for(p1=a+N;p1>p;p1--)
      {  if(*p1<*(p1-1))
         {
          temp=*p1;
         *p1=*(p1-1);
         *(p1-1)=temp;
         }
        }
    }
   for(p=a;p<a+N;p++)
           printf("%-4d",*p);
}
    恩再说下我 写的思想  定义了2个指针一个头 一个尾  头指针控制外循环次数  内层循环 尾指针控制 从最后开始拍  把小的升上去  然后外层循环++ 指针从A偏移到了 a+1 这样排序就从 最后排到第2个位置 依次类推

------...-.-..-...-----........-------.......----.....------....||- - !
2008-04-10 19:27
快速回复:用指针,将输入的数字从大到小排列
数据加载中...
 
   



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

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