跳转至

练习03-函数

练习03-函数

题量: 18 满分: 100
作答时间:04-24 09:20 至_06-26 23:55_

1.(单选题) 为了提高函数调用的实际运行速度,可以将较简单的函数定义为( )。

  • A. 内联函数
  • B. 重载函数
  • C. 递归函数
  • D. 函数模板

2.(单选题) 关于内联函数的说法不正确的是( )。

  • A. 在声明类的同时定义成员函数,则函数隐含为内联函数
  • B. 也可以在类的外部用inline关键字,对成员函数进行说明,则该函数也为内联函数
  • C. 当内联函数被调用时,内联函数的代码在调用处被展开
  • D. 当内联函数被调用时,内联函数将返回结果

3.(单选题) 下列关于C++函数的说明中,正确的是( )。

  • A. 内联函数就是定义在另一个函数体内部的函数
  • B. 函数体的最后一条语句必须是return语句
  • C. 标准C++要求在调用一个函数之前,必须先声明其原型
  • D. 编译器会根据函数的返回值类型和参数表来区分函数的不同重载形式

4.(单选题) 为了取代C中带参数的宏,在C++中使用( )。

  • A. 重载函数
  • B. 内联函数
  • C. 递归函数
  • D. 友元函数

5.(单选题) 下列说法正确的是( )。

  • A. 内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方
  • B. 内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方
  • C. 类的内联函数必须在类体内定义
  • D. 类的内联函数必须在类体外通过加关键字inline定义

6.(单选题) 说明一个内联函数时,应加关键字是( )。

  • A. inline
  • B. static
  • C. void
  • D. extern

7.(单选题)

对C++编译器区分重载函数无任何意义的信息是( )。
- A. 参数类型
- B. 参数个数
- C. 返回值类型
- D. 常成员函数关键字const

8.(单选题) 关于函数重载的说法正确的是( )。

  • A. 函数的返回值在区别重载函数时起着举足轻重的作用
  • B. 重载函数是靠参数的个数和类型来区分的,参数的名称和返回值是不起作用的
  • C. 参数的传递方式在区别重载函数时起着举足轻重的作用
  • D. 功能不同的两个函数也可以重载,这使得程序更简洁

9.(单选题) 关于函数中的<返回类型>,下列表述中错误的是( )。

  • A. <返回类型>中有可能包含关键字int
  • B. <返回类型>中有可能包含自定义标识符
  • C. <返回类型>中有可能包含字符*
  • D. <返回类型>中可能包含[]

10.(单选题) 已知函数FA调用函数FB,若要把这两个函数定义在同一个文件中,则( )。

  • A. FA必须定义在FB之前
  • B. FB必须定义在FA之前
  • C. 若FA定义在FB之后,则FA的原型必须出现在FB的定义之前
  • D. 若FB定义在FA之后,则FB的原型必须出现在FA的定义之前

11.(单选题) 下列函数原型声明中,错误的是( )。

  • A. int function ( int m, int n );
  • B. int function(int,int);
  • C. int function ( int m=3,int n );
  • D. int function(int &m,int &n);

12.(单选题) 下列设置函数参数默认值的说明语句中,错误的是( )。

  • A. int fun(int x , int y=10);
  • B. int fun(int x=5, int y);
  • C. int fun(int x=5, int y=10);
  • D. int fun(int x , int y=3+5);

13.(单选题) 已知:int fun (int &A),m=10;下列调用fun()函数的语句中,正确的是( )。

  • A. fun(&m);
  • B. fun (m);
  • C. fun (m*2);
  • D. fun (m++);

14.(单选题) 对于如下函数定义func,若有int x=0, y=1; 则调用函数func(x,y)xy的值分别是( )。

void func(int a, int b)  a++;  b++;   
- A. 0和1
- B. 1和1
- C. 0和2
- D. 1和2

15.(单选题) 下列有关函数重载的叙述中,错误的是( )。

  • A. 函数重载就是用相同的函数名定义多个函数
  • B. 重载函数的参数列表必须不同
  • C. 重载函数的返回值类型必须不同
  • D. 重载函数的参数可以带有默认值

16.(单选题) 函数fun的返回值是( )。

fun(char *achar *b)  
    int num=0n=0  
    while(*(a+num)!=‘\0)   num++  
    while(b[n])    *(a+num)=b[n]  num++  n++;}  
    return num  
  
- A. 字符串a的长度
- B. 字符串b的长度
- C. 字符串ab的长度之差
- D. 字符串ab的长度之和

17.(单选题) 函数fun的原型为:void fun(int a,int b=7,char *p=”**”); 下列函数调用中错误的是( )。

  • A. fun(5)
  • B. fun(5,8)
  • C. fun(6,”##”)
  • D. fun(0,0,”==”)

18.(单选题) 下列关于函数参数的叙述中,正确的是( )。

  • A. 在函数原型中不必声明形参类型
  • B. 函数的实参和形参共享内存空间
  • C. 函数形参的生存期与整个程序的运行期相同
  • D. 函数的形参在函数被调用时获得初始值

练习03-函数答案

正确答案列表:

  1. A
  2. D
  3. C
  4. B
  5. B
  6. A
  7. C
  8. B
  9. D
  10. D
  11. C
  12. B
  13. B
  14. A
  15. C
  16. D
  17. C
  18. D