✏️ 纠错
第 274 题 / 共 301 题
第 8 题 下列C++代码用于求斐波那契数列,即第1个数0,第2个数1,从第三个数开始,是前两个数之和。如果输入的值为大于1的正整数,该代码能实现。( )

cin >> n;
a = 0, b = 1;
for (int j = 0; j < n; j++){
    cout << a << " ";
    b = b + a;
    a = b - a;
}
📝 题目解析

【答案】对

【考纲知识点】递推

【解析】当n≥1时,循环依次输出斐波那契数列的前n项。初始a=0、b=1,每次输出a后更新b为a+b,a为原b值,即实现a、b向后推进一位。对于n>1的情况,数列能正确生成;n=1时仅输出第一项0,也符合要求,因此代码逻辑正确。