[求助]用冒泡法对数组进行排序,排序后的数组元素却被更改
程序如下:
void BubbleSort(int arry[],int size);
void Print(const int arry[],int size);
int main()
{
//int i;
const int size=18;
int arry[size]={1,3,5,65,1,2,4,5,1,6,24,2,5,6,7,2,3,9};
cout<<"原数组:\n";
Print(arry,size);
cout<<"\n排序后的数组为:\n";
BubbleSort(arry,size);
Print(arry,size);
cout<<endl;
return 0;
}
void BubbleSort(int arry[],int size)
{
int i,j,
temp;
for(i=1;i<size;i++)
for(j=0;j<size-1;j++)
if(arry[j]>arry[j+1])
{
temp=arry[j];
arry[j]=arry[j+1];
arry[j+1]=arry[j];
}
}
void Print(const int arry[],int size)
{
for(int i=0;i<size;i++)
cout<<arry[i]<<' ';
}
小弟不知道为什么运行的结果会是这样:
原数组:
1 3 5 65 1 2 4 5 1 6 24 2 5 6 7 2 3 9
排序后的数组为:
1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 3 9
请高手帮帮忙,小弟先谢了!!