各位大侠!求救!这个程序哪儿有错?
放羊大亨 2009-11-27 05:09:30 #include<iostream>
using namespace std;
void swap(int *pa,int *pb);
void sort(int a[],int size) ;
int main()
{
//cout<<"please input 10 intengers:\n";
int n,data;
cout<<"输入数组元素的个数:";
cin>>n;
cout<<"请输入"<<n<<"个整数:"<<endl;
//int a[n];
int *a=new int[n];
for(int i=0;i<n;i++)
{
cin>>data;
a[i]=data;
}
sort(a,n);
cout<<"the sorted are as following:"<<endl;
for(int j=0;j<10;j++)
{
cout<<a[j]<<" ";
}
delete []a;
system("pause");
return 0;
}
void swap(int *pa,int *pb)
{
int tmp=*pa;
*pa=*pb;
*pb=tmp;
}
void sort(int a[],int size) //size为数组大小,即要排序的元素个数
{
//插入排序
for(int i=2;i<size;i++)
{
int key=a[i];
int n=i;
for(int j=i-1;j>=0;j--)
{
if(key<a[j])
{
swap(&a[j],&a[n]);
n--;
}
else
break;
}
}
}
输出怎么是这样? 多谢!