模板函数的创建及使用
任务描述
本关任务:书写一个排序函数,输入任意类型的一组数,将其作为摸排表函数的参数输入,调用书写的排序模板函数,对数据排序,然后输出。
相关知识
为了完成本关任务,你需要掌握:1.模板函数的创建,2.模板函数的使用。3.数组的排序
模板函数的创建
template
T sort(p[],int n);//n为数据个数
使用模板函数
sort(x,n);
sort(y,n);
for(int i=0;i<n;i++)
cout<<x[i]<<“,”;
cout<<endl;
for(int i=0;i<n;i++)
cout<<y[i]<<“,”;
系统将会对你的程序进行测试
测试:
测试输入:3
3 2 1
5.5 -4.5 6
预期输出:
1,2,3,
-4.5,5.5,6,
测试输入:5
5 4 3 2 1
5.5 4.4 3.4 2.78 1.9
预期输出:
1,2,3,4,5,
1.9,2.78,3.4,4.4,5.5,
注意:每个数字以逗号隔开
示例
main.cpp
//
// Created by sora on 23-4-23.
//
#include"iostream"
using namespace std;
template<typename T>//定义模板函数
//冒泡排序
void bubblesort(T a[],int n){
for(int i=0;i<n-1;i++){
int flag = 1;
for(int i=0;i<n-1;i++) {
if (a[i] > a[i + 1]) {
T temp = a[i];
a[i] = a[i + 1];
a[i + 1] = temp;
flag = 0;
}
}
if (flag==1) break;
}
}
int main()
{
int n;
cin>>n;
int a[n];
float b[n];
for(int i=0;i<n;i++){
cin>>a[i];
}
for(int i=0;i<n;i++){
cin>>b[i];
}
bubblesort(a,n);
bubblesort(b,n);
for(int i=0;i<n;i++){
cout<<a[i]<<' ';
}
for(int i=0;i<n;i++){
cout<<b[i]<<' ';
}
return 0;
}