| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1866 人关注过本帖
标题:[求助]这个错在哪里呀?
只看楼主 加入收藏
a18533648
Rank: 1
等 级:新手上路
帖 子:106
专家分:0
注 册:2007-7-24
收藏
得分:0 

哈哈,我学会了定位比较交换算法了


2007-08-12 22:35
mnb1237273
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2006-6-1
收藏
得分:0 
这种排序是不是要比冒泡南点哦

三分天注定,七分靠打拼,爱拼才会赢。我要早日跨入C语言的精彩世界。实践才是检验真理的唯一标准!
2007-08-12 23:22
ddrpc133
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2007-1-14
收藏
得分:0 


个人觉得这种算法并不太可取,如果需要对100个数据进行排序呢?
那楼主岂不是要.......
如果更多呢?
这种算法没有通用性,只能对固定个数的数字排序
当然楼主的精神还是值得学习滴

2007-08-13 08:35
逸仙流
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2007-7-31
收藏
得分:0 
看不懂...!

花非花,霧非霧!
2007-08-13 09:22
a18533648
Rank: 1
等 级:新手上路
帖 子:106
专家分:0
注 册:2007-7-24
收藏
得分:0 

其实我是想通过练习来熟悉这个算法的.现在也终算熟悉了.


2007-08-13 10:17
nwpu063417
Rank: 3Rank: 3
等 级:论坛游民
威 望:8
帖 子:428
专家分:28
注 册:2007-5-11
收藏
得分:0 
如果你想给4个数排序的话,错误就很简单了。
if(a<b){a=t;a=b;b=t;}
那这句话来说吧,如果a<b,则a,b交换位置。
if(a < b)
{
t = a;
a = b;
b = t;
}
赋值语句是把后边的变量赋给前边的。

2007-08-13 11:19
jun0325
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2007-8-8
收藏
得分:0 
从程序看来,程序的功能是输入四个数,然后从大到小输出.
你程序错在两数交换部分.
修改后的程序如下:
/*在Win-TC下编译通过*/

#include<stdio.h>
main()
{ int a,b,c,d,t;
printf("a,b,c,d=");
scanf("%d,%d%d,%d",&a,&b,&c,&d);
if(a<b){t=a;a=b;b=t;} /*a与b交换(关键部分)*/
if(a<c){t=a;a=c;c=t;}
if(a<d){t=a;a=d;d=t;}
if(b<c){t=b;b=c;c=t;}
if(b<d){t=b;b=d;d=t;}
if(c<d){t=c;c=d;d=t;}
printf("%d>%d>%d>%d",a,b,c,d);
getch();
}
输入:1,2,4,3,输出结果:4>3>2>1

[此贴子已经被作者于2007-8-13 11:33:30编辑过]


数据结构+算法+程序设计方法+语言工具和环境=程序
2007-08-13 11:32
nwpu063417
Rank: 3Rank: 3
等 级:论坛游民
威 望:8
帖 子:428
专家分:28
注 册:2007-5-11
收藏
得分:0 

选择法排序:
//降序排列
#define N 4
#include <stdio.h>
void main()
{
int a[N];
int i, j, t;
for(i = 0; i < N; i++)
{
scanf("%d",&a[i]);
}
for(i = 0; i < N-1; i++)
{
for(j = i+1; j < N; j++)
{
if(a[j] > a[i])
{
t = a[i];
a[i] = a[j];
a[j] = t;
}
}
}
for(i = 0; i < N; i++)
{
printf("%d ",a[i]);
}
printf("\n");
}


2007-08-13 11:37
a18533648
Rank: 1
等 级:新手上路
帖 子:106
专家分:0
注 册:2007-7-24
收藏
得分:0 
谢谢了

2007-08-13 15:15
sjt
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2007-8-1
收藏
得分:0 

逻辑错误,27楼说得对

2007-08-13 21:22
快速回复:[求助]这个错在哪里呀?
数据加载中...
 
   



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

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