/*copyright(c)2016.烟台大学计算机学院
* All rights reserved,
* 文件名称:text.Cpp
* 作者:舒文超
* 完成日期:2016年5月30日
* 版本号:vc++6.0
* 问题描述:是一个函数模板的两个实例,其功
能是将数组a中的前size个元素按
从小到大顺序排列。试设计这个函
数模板。
*/
#include<iostream>
using namespace std;
template<class T>
void sort(T *p,int n)
{
int i,j,index;
T t,min;
for(i=0; i<n; i++)
{
min =*(p+i);
index = i;
for(j=i+1;j<n;j++)
{
if(*(p+j) < min)
{
min = *(p+j);
index = j;
}
}
t = *(p+i);
*(p+i) = min;
*(p+index)= t;
}
}
int main()
{
int i,m,n;
cout<<"please input number of group1"<<endl;
cin>>m;
int *p=new int[m];
cout<<"please input "<<m<<" digits"<<endl;
for(i=0;i<m;i++)
cin>>p[i];
sort(p,m);
cout<<"please input number of group2"<<endl;
cin>>n;
int *p1=new int[n];
cout<<"please input "<<n<<" digits"<<endl;
for(i=0;i<n;i++)
cin>>p1[i];
sort(p1,n);
for(i=0; i<m; i++)
cout<<*(p+i)<<" ";
cout<<endl;
for(i=0; i<n; i++)
cout<<*(p1+i)<<" ";
cout<<endl;
return 0;
}
第十四周项目二 排序函数模板(动态分配空间+选择排序法)
最新推荐文章于 2023-03-04 21:50:44 发布