【项目-排序函数模板】
已知
void Sort(int a[],int size);
void Sort(double a[],int size);
是一个函数模板的两个实例,其功能是将数组a中的前size个元素按从小到大顺序排列。试设计这个函数模板。
参考解答:
#include<iostream>
using namespace std;
template<class T>
void Sort(T set[],int n)
{
int i,j;
T temp;
for(i=1; i<n; i++)
for(j=n-1; j>=i; j--)
if(set[j-1]>set[j])
{
temp=set[j-1];
set[j-1]=set[j];
set[j]=temp;
}
}
int main()
{
int i;
int a[]= {4,5,2,8,9,3};
double b[]= {3.5, 6.7, 2, 5.2, 9.2, 10.3};
Sort(a,6);
Sort(b,6);
for(i=0; i<6; i++)
cout<<a[i]<<" ";
cout<<endl;
for(i=0; i<6; i++)
cout<<b[i]<<" ";
cout<<endl;
return 0;
}