自考专升本《C++程序设计》实践课练习题
实验二 :使用函数模板实现3个数值从大到小排列
这里的实现做了一点扩展,对n个数值都可以进行从小到大排序
template <class T>
/** 给data进行排序 */
void templateSort(T data[],int length){
T temp;
for(int i=0;i<length;i++){
for(int j=i;j<length;j++){
if(data[j]<data[i]){
temp=data[i];
data[i]=data[j];
data[j]=temp;
}
}
}
for(int m=0;m<length;m++){
if(m==length-1){
cout<<data[m]<<endl;
}else{
cout<<data[m]<<" < ";
}
}
}
void testTemplateSort(){
int Int[] = {6,15,4};
char Char[] = {'a','d','g','m'};
double Double[] = {11.6,14.77,11.5};
templateSort(Int,3);
templateSort(Char,4);
templateSort(Double,3);
}
int main(){
testTemplateSort();
return 0;
}
输出结果:
4 < 6 < 15
a < d < g < m
11.5 < 11.6 < 14.77
Press any key to continue