标题:选择排序问题
只看楼主
wluhao
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2012-9-25
结帖率:70%
已结贴  问题点数:5 回复次数:3 
选择排序问题
#include<iostream>
using namespace std;

void select_sort(int arry[],int );
int main()
{int i, a[10];
for(i=0;i<10;i++)
cin>>a[i];
cout<<endl;
select_sort(a,10);
for(i=0;i<10;i++)
cout<<a[i]<<" ";
cout<<endl;

     return 0;
}
void select_sort(int arry[],int n)
{int i,j,k,t;
    for(i=0;i<n-1;i++)
{k=i;
    for(j=1;j<n;j++)
if(arry[k]>arry[j])k=j;
t=arry[k];
arry[k]=arry[i];
arry[i]=t;
}
}用选择法排序,这个程序有什么错误,得到结果与实际不符,请求高人指点,谢谢
搜索更多相关主题的帖子: void 
2012-10-12 18:48
oncoldrain
Rank: 2
等 级:论坛游民
威 望:1
帖 子:11
专家分:36
注 册:2012-10-11
得分:3 
#include<iostream>
using namespace std;

void select_sort(int arry[],int );

int main()
{
    int i, a[10];
    for(i=0;i<10;i++)
        cin>>a[i];
    cout<<endl;
    select_sort(a,10);
    for(i=0;i<10;i++)
        cout<<a[i]<<" ";
    cout<<endl;

     return 0;
}
void select_sort(int arry[],int n)
{
    int i,j,t,k=1;
    while(k)
    {
        k=0;
        for(i=0;i<n-1;i++)
        {            
            if(arry[i]<arry[i+1])
            {   
                t=arry[i];
                arry[i]=arry[i+1];
                arry[i+1]=t;
                k++;
            }
        }
    }
}

57818点net
2012-10-12 19:15
oncoldrain
Rank: 2
等 级:论坛游民
威 望:1
帖 子:11
专家分:36
注 册:2012-10-11
得分:0 
#include<iostream>
using namespace std;

void select_sort(int arry[],int );

int main()
{
    int i, a[10];
    for(i=0;i<10;i++)
        cin>>a[i];
    cout<<endl;
    select_sort(a,10);
    for(i=0;i<10;i++)
        cout<<a[i]<<" ";
    cout<<endl;

     return 0;
}
void select_sort(int arry[],int n)
{
    int i,j,k,t;
    for(i=0;i<n-1;i++)
    {
        k=i;
        for(j=i+1;j<n;j++)
            if(arry[i]>arry[j])
            {
                k=j;
                t=arry[k];
                arry[k]=arry[i];
                arry[i]=t;
            }
    }
}

57818点net
2012-10-12 19:26
Silence_
Rank: 2
等 级:论坛游民
帖 子:8
专家分:22
注 册:2012-9-18
得分:3 
void select_sort(int array[],int n)
{
    int i,j,k,t;
    for(i=0;i<n-1;i++)
    {
        k=i;
        for(j=i+1;j<n;j++)
            if(array[k]>array[j])
                k=j;
            if(k!=i)
            {t=array[i];x[i]=array[k];array[k]=t;}
    }
}
代码就是这样
2012-10-12 20:21



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-383037-1-1.html




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

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