编写递归函数int fib (int n),在主程序中输入n的值,调用fib函数计算Fibonacci级数。 扩展练习:使用内联函数编程求出自然数1~10中各个数的立方值。
时间: 2024-09-28 22:10:51 浏览: 37
递归方法求斐波那契函数FIB(N).pdf
编写递归函数`int fib(int n)`,用于计算斐波那契数列。该数列的定义是:第0项为0,第1项为1,从第2项开始,每一项都等于前两项之和。递归函数的实现如下:
```c++
int fib(int n) {
if (n <= 1) { // 基本情况
return n;
} else {
return fib(n - 1) + fib(n - 2); // 递归调用
}
}
```
在主程序中,你可以让用户输入一个整数n,并调用这个函数:
```c++
#include <iostream>
int main() {
int n;
std::cout << "请输入一个正整数n: ";
std::cin >> n;
std::cout << "斐波那契数列的第" << n << "项是: " << fib(n) << std::endl;
return 0;
}
```
对于扩展练习,可以使用内联函数(inline function)来提高立方值计算的效率。内联函数是一种要求编译器将函数体直接替换到调用位置的技术。下面是计算1到10之间每个数字立方的内联函数示例:
```c++
// 内联函数声明
inline int cube(int num) {
return num * num * num;
}
int main() {
for (int i = 1; i <= 10; ++i) {
std::cout << "1到10中," << i << "的立方是: " << cube(i) << std::endl;
}
return 0;
}
```
阅读全文