1.若有以下程序
#include <stdio.h>
int f(int a[ ],int n)
{
if(n > 1)
{
int t;
t=f(a, n-1);
return t > a[ n -1 ] ? t:a[n-1];
}
else
return a[0];
}
main()
{
int a[ ]= {8,2,9,1,3,6,4,7,5};
printf("%d\n", f(a, 9));
}
则程序的输出结果是?
- 9
- 1
- 8
- 5
答案:A
主要考察函数的递归调用
2.关于函数模板,描述错误的是?
- 函数模板必须由程序员实例化为可执行的函数模板
- 函数模板的实例化由编译器实现
- 一个类定义中,只要有一个函数模板,则这个类是类模板
- 类模板的成员函数都是函数模板,类模板实例化后,成员函数也随之实例化
答案:A
函数模板是 编译器 按照程序员的要求 实例化为函数