| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 578 人关注过本帖
标题:一个初级问题
只看楼主 加入收藏
wzzhi
Rank: 1
等 级:新手上路
帖 子:123
专家分:0
注 册:2005-11-11
收藏
 问题点数:0 回复次数:5 
一个初级问题

帮忙看下下面的排序,我感觉没什么问题,可运行就是排不了,编译没错误
/*********10个数的数组排序************/
for(i=0;i<9;i++)
for(j=i;j<10;j++)
if(a[i]>a[j])
{ t=a[i];
a[i]=a[j];
a[j]=t
}

搜索更多相关主题的帖子: 初级 
2006-01-02 10:29
tiandi2997
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2005-12-9
收藏
得分:0 
有错误
应为:for(i=0;i<10;i++)
for(j=i+1;j<10;j++)
if(a[i]>a[j])
{ t=a[i];
a[i]=a[j];
a[j]=t
}
我没有运行,你看看可以不~~~~~~~~~~~~~
这是用选择法,还有冒泡法呢

2006-01-02 10:44
小悟空
Rank: 1
等 级:新手上路
帖 子:218
专家分:0
注 册:2005-5-14
收藏
得分:0 
for(j=i;j<10;j++)
用第一个和第一个比,,,错误应该用a[i]和a[j+1]比,,,
要不用冒泡法~~~!!!也行~~~!!!

2006-01-02 11:15
wu811216
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2005-11-7
收藏
得分:0 

如果你用得是起跑就有错
for(i=0;i<10;i++)
for(j=0;j<10-1;j++)
if(a[j]>a[j+1])
{ t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
2006-01-08 02:55
wanglff
Rank: 2
等 级:新手上路
威 望:5
帖 子:375
专家分:0
注 册:2005-12-21
收藏
得分:0 

for(i=0;i<10;i++)
for(j=i;j<10-i-1;j++)
if(a[j]>a[j+1])
{ t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}

自强不息:)
2006-01-08 09:57
spp509
Rank: 1
等 级:新手上路
威 望:1
帖 子:98
专家分:0
注 册:2005-11-23
收藏
得分:0 
#include <stdio.h>
void main()
{
int a[10]={10,9,8,7,6,5,4,3,2,1},i,j,t;

for(i=0;i<9;i++)
{
for(j=i;j<10;j++)---------------------------------j = i+1就OK了
if(a[i]>a[j])
{
t=a[i];
a[i]=a[j];
a[j]=t;
}
}
for(i = 0;i < 10;i ++ )
printf("%d",a[i]);
}

一听就懂,一看就会,一做就错……
2006-01-08 13:24
快速回复:一个初级问题
数据加载中...
 
   



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

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