主题:[讨论]书序排序问题
这个排序程序为何出错啊
#include<iostram>
using namespace std;
#define size 8
void slesort(float items[],int n);
int findindexofmin(const float x[],int startindex,int endindex);
void exchange(float x,float y);
int main()
{
float ary[size];
for(int i=0;i<size;i++)
{
cout<<"enter the"<<(i+1)<<"element"<<endl;
cin>>ary[i];
}
slesort(ary,size);
for(int i=0;i<size;i++)
cout<<"the"<<' '<<i+1<<"number is"<<ary[i]<<endl;
return 0;
}
void slesort(float items[],int i)
{
int min;
for(int i=0;i<size-1;i++)
{
min=findindexofmin(ary,i+1,size-1);
if(ary[i]>ary[min])
exchange(ary[i],ary[min]);
}
return;
}
int findindexofmin(const float x[],int startindex,int endindex)
{
int minindex;
if((startindex<0)&&(endindex>size))
{
cout<<"ERROR"<<endl;
return -1;
}
minindex=startindex;
for(int i=0;i<endindex;i++)
if(ary[i]<ary[minindex])
minindex=i;
return minindex;
}
void exchange(float x,float y)
{
float temp;
temp=x;
x=y;
y=temp;
}
#include<iostram>
using namespace std;
#define size 8
void slesort(float items[],int n);
int findindexofmin(const float x[],int startindex,int endindex);
void exchange(float x,float y);
int main()
{
float ary[size];
for(int i=0;i<size;i++)
{
cout<<"enter the"<<(i+1)<<"element"<<endl;
cin>>ary[i];
}
slesort(ary,size);
for(int i=0;i<size;i++)
cout<<"the"<<' '<<i+1<<"number is"<<ary[i]<<endl;
return 0;
}
void slesort(float items[],int i)
{
int min;
for(int i=0;i<size-1;i++)
{
min=findindexofmin(ary,i+1,size-1);
if(ary[i]>ary[min])
exchange(ary[i],ary[min]);
}
return;
}
int findindexofmin(const float x[],int startindex,int endindex)
{
int minindex;
if((startindex<0)&&(endindex>size))
{
cout<<"ERROR"<<endl;
return -1;
}
minindex=startindex;
for(int i=0;i<endindex;i++)
if(ary[i]<ary[minindex])
minindex=i;
return minindex;
}
void exchange(float x,float y)
{
float temp;
temp=x;
x=y;
y=temp;
}