C++求助问题

来源:百度知道 编辑:UC知道 时间:2024/06/04 06:15:53
1.定义函数模版实现两个数据的交换.
2.编写函数实现使用指针变量实现数组元素按逆序重新排列.要求在主函数中对数组赋值和输出排序后的结果.

1.
template <class T> void swap(T &a,T &b)
{
T temp;
temp=a;
a=b;
b=temp;
}
2.
void reverse(int *pint,int len)
{
int temp;
for(int i=0;i<len/2;i++)
{
temp=pint[i];
pint[i]=pint[len-1-i];
pint[len-1-i]=temp;
}
}
void main()
{
int a[]={1,2,3,4,5,6,7,8,9};
int i;
for(i=0;i<sizeof a/sizeof a[0];i++)
cout<<a[i]<<endl;
reverse(a,sizeof a/sizeof a[0]);
cout<<"逆序排列后"<<endl;
for(i=0;i<sizeof a/sizeof a[0];i++)
cout<<a[i]<<endl;

}

#include <stdio.h>

template <class T>
void Swap(T& lhs, T& rhs)
{
T tmp = lhs;
lhs = rhs;
rhs = tmp;
}

template <class T>
void Reverse(T* beg, T* end)
{
while(beg < end)
Swap(*beg++, *--end);
}

template <cla