#CS40504. 阅读程序5-递推与递归4

阅读程序5-递推与递归4

阅读程序

注意:切勿用电脑直接运行代码得出答案,请用大脑+笔+纸运行代码答题,否则是在浪费你的时间。

第4题【NOIP】2010

#include <iostream>
using namespace std;
const int NUM = 5;
int r(int n)
{
    int i;
    if (n <= NUM)
        return n;
    for (i = 1; i <= NUM; i++)
        if (r(n - i) < 0)
            return i;
    return -1;
}

int main()
{
    int n;
        
    cin>>n;
    cout<<r(n)<<endl;
    return 0;
}

●判断题

(1)将第4行的int改为unsigned,答案不会错误。

{{ select(4-1) }}

  • 正确
  • 错误

(2)程序开启O2优化不会返回错误。

{{ select(4-2) }}

  • 正确
  • 错误

(3)如果输入-1,程序会输出-1。

{{ select(4-3) }}

  • 正确
  • 错误

(4)该问题r(n)的值没有规律。

{{ select(4-4) }}

  • 正确
  • 错误

●选择题

(5)如果输入7,程序会输出( )。

{{ select(4-5) }}

  • -1
  • 5
  • 1
  • 3

(6)如果输入16,程序会输出()。

{{ select(4-6) }}

  • 16
  • -1
  • 4
  • 1