( 9 )下面是一个递归函数,其功能是使数组中的元素反序排列。请将函数补充完整。
void reverse(int *a, int size){
if(size<2) return;
int k=a[0];
a[0]=a[size-1];
a[size-1]=k;
reverse(a+1, 【 9 】 );
}
第1题:
下面是用来计算n的阶乘的递归函数,请将该函数的定义补充完整。(注:阶乘的定义是n!cn*(n-1)*...*2*1)
unsigned fact(unsigned n)
{
if (n<=1)
return 1;
return 【 】;
}
第2题:
以下函数模板max()的功能是返回数组a中最大元素的值。请将横线处缺失部分补充完整。
template<typename T>T max(T a[],int n)
{
T m=a[0]
for(int i=1;i<n;i++)
if(a[i]>m)______;
return m;
}
第3题:
下面是用来计算n的阶乘的递归函数,请将该函数的定义补充完整。(注:阶乘的定义是n!=n*(n-1)*...*2*1)
unsigned fact (unsigned n)
{
if(n<=1)
retum 1;
return【 】;
}
第4题:
下列程序将x、y和z按从小到大的顺序排列,请将下面的函数模板补充完整。
template<class T>
void order( )
{
T al
if(x>y)
{
a=x;x=y; y=a;
}
if(y>z)
{
a=y;y=Z; z=a;
}
if(x>y)
{
a=X;X=y; y=a;
}
}
第5题:
以下函数模板main()的功能是:返回数组a中最大元素的值。请将横线处缺失部分补充完整。
template<typename T>Tmax(Ta[],intn)
{
Tm=a[0];
for(int i:1;i(n;i++)
if(a[i]>m______;
return m;
}