| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 665 人关注过本帖
标题:【请教】这个冒泡排序程序有些问题
只看楼主 加入收藏
子洋虾米
Rank: 1
来 自:哈尔滨市第九中学
等 级:新手上路
帖 子:79
专家分:0
注 册:2008-9-15
收藏
 问题点数:0 回复次数:4 
【请教】这个冒泡排序程序有些问题
#include <stdio.h>
/*未调试完毕*/
#define True 1
#define False 0
#define N 11
main()
{int i,j,NoSwap;
int r[]={0,9,8,7,6,5,4,3,2,1};
      for(i=1;i<N-1;i++)
      {NoSwap=True;
      for(j=N-1;j>1;j--)
      {if(r[j+1]<r[j])
      {r[0]=r[j+1];r[j+1]=r[j];r[j]=r[0];
      NoSwap=False;}
      }
      }
for(i=1;i<N-1;i++)
printf("%d ",r[i]);
scanf("%*d");
}

不知道为什么第一个总是最大
第二个开始才是递减的
请教
谢谢!
搜索更多相关主题的帖子: 冒泡 
2008-09-22 21:06
w0nfer
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2008-9-4
收藏
得分:0 
if(r[j+1]<r[j])
      {r[0]=r[j+1];r[j+1]=r[j];r[j]=r[0];} 这句的含义是把大数徃前排,循环下来不就这样吗
2008-09-22 21:27
飞天舞xsj
Rank: 1
来 自:武汉
等 级:新手上路
帖 子:47
专家分:0
注 册:2006-12-25
收藏
得分:0 
int r[]={0,9,8,7,6,5,4,3,2,1};
      for(i=1;i<N-1;i++)
      {NoSwap=True;
      for(j=N-1;j>1;j--)
      {if(r[j+1]<r[j])
      {r[0]=r[j+1];r[j+1]=r[j];r[j]=r[0];
      NoSwap=False;}
      }
我先问下:1>j=N-1,if(r[j+1]<r[j])中r[j+1],r[j]是多少?
          2>for(i=1;i<N-1;i++)
printf("%d ",r[i]);输出的是想要的吗?
           3>{if(r[j+1]<r[j])
      {r[0]=r[j+1];r[j+1]=r[j];r[j]=r[0];这就更乱了????

2008-09-22 21:29
丛林小妖
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2008-9-14
收藏
得分:0 
回复 1# 子洋虾米 的帖子
#include <stdio.h>
/*未调试完毕*/
#define True 1
#define False 0
#define N 10
main()
{int i,j,t,NoSwap;
int r[]={0,9,8,7,6,5,4,3,2,1};
      for(i=1;i<N-1;i++)
      {NoSwap=True;/*没有用*/
      for(j=0;j<N-1-i;j++)
      {
          if(r[j]<r[j+1])
      { t=r[j];
          r[j]=r[j+1];
          r[j+1]=t;
      NoSwap=False;/*没有用*/
      }
      }
      }
for(i=0;i<N-1;i++)
printf("%d ",r[i]);
}
这样就可以了。

任重道远多艰辛
2008-09-22 21:32
一贯而终
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2008-9-18
收藏
得分:0 
不是有个经典的算法么?
scanf N[10]
...
for(int i=1;i<=10;i++)
   for(int j=1;j<=10;j++)
   {
      if(N[i]<N[j])swap(N[i],N[j]);
   }
...
printf N[10]
2008-09-22 22:09
快速回复:【请教】这个冒泡排序程序有些问题
数据加载中...
 
   



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

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