#JC1016. 函数进阶

函数进阶

一、选择题(共 10 题)

1、函数重载的要求是?()。 {{ select(1) }}

  • 函数名相同,参数列表不同
  • 函数名不同,参数列表相同
  • 返回值类型必须相同
  • 返回值类型必须不同

2、全局变量的作用域范围是?()。 {{ select(2) }}

  • 仅定义它的函数内部
  • 整个程序,定义之后都可访问
  • 只能在main函数使用
  • 只能循环体内使用

3、下面关于函数传值调用说法正确的是?()。 {{ select(3) }}

  • 形参修改不会影响外面实参变量
  • 修改形参会直接改变实参
  • 传值必须用数组
  • 传值无法传递int类型

4、递归函数指的是?()。 {{ select(4) }}

  • 函数自己调用自己
  • 多个函数互相调用
  • 在循环里面调用函数
  • main调用其他函数

5、递归函数必须要有什么,否则会死递归?()。 {{ select(5) }}

  • 递归终止条件
  • 全局变量
  • void返回类型
  • 数组参数

6、int f(int a,int b=2){return a*b;},这里b=2叫做?()。 {{ select(6) }}

  • 默认参数
  • 形参常量
  • 全局参数
  • 实参

7、判断函数重载,以下哪一项不能作为区分依据?()。 {{ select(7) }}

  • 参数个数
  • 参数类型
  • 返回值类型
  • 参数顺序

8、递归求解阶乘,f(5) 一共调用几次f函数?()。 {{ select(8) }}

  • 4次
  • 5次
  • 6次
  • 1次

9、如果想在函数内部修改外部实参变量的值,优先选择?()。 {{ select(9) }}

  • 引用传递
  • 值传递
  • 直接复制变量
  • 全局常量

10、函数默认参数,放置位置要求是?()。 {{ select(10) }}

  • 带默认值的参数放在参数列表最右侧
  • 必须写在第一个参数
  • 所有参数都必须带默认值
  • 不能多个参数带默认值

二、判断题(共 5 题)

11、函数重载仅依靠返回类型不同就能区分。()。 {{ select(11) }}

12、全局变量会从程序开始运行直到程序结束一直存在。()。 {{ select(12) }}

13、递归没有出口,会无限调用造成栈溢出。()。 {{ select(13) }}

14、值传递时,形参是实参的一份拷贝。()。 {{ select(14) }}

15、同一个函数,一部分参数有默认值,一部分没有,无默认的可以写在后面。()。 {{ select(15) }}