用C++编写一个能计算阶乘的小程序使用递归函数,头文件与源文件
时间: 2024-09-09 12:02:37 浏览: 89
一个使用递归函数计算阶乘的C++小程序可以分为两部分:头文件(.h)和源文件(.cpp)。下面我会先给出一个简单的例子,然后描述每一部分的内容。
首先是头文件(factorial.h):
```cpp
#ifndef FACTORIAL_H
#define FACTORIAL_H
// 函数声明
unsigned long long factorial(unsigned int n);
#endif // FACTORIAL_H
```
在这个头文件中,我们声明了将要实现的阶乘函数`factorial`,并且使用了预处理器指令来避免头文件被多次包含。
接下来是源文件(factorial.cpp):
```cpp
#include "factorial.h" // 引入头文件
// 阶乘函数的实现
unsigned long long factorial(unsigned int n) {
if (n == 0) {
return 1; // 递归终止条件:0的阶乘是1
} else {
return n * factorial(n - 1); // 递归调用
}
}
```
在这个源文件中,我们实现了阶乘函数,并且使用了递归来计算阶乘值。如果`n`是0,则返回1,因为0的阶乘定义为1;否则,返回`n`乘以`n-1`的阶乘。
最后,你可以创建一个main函数来测试这个阶乘函数,通常放在一个名为main.cpp的文件中:
```cpp
#include "factorial.h" // 引入阶乘函数的声明
#include <iostream>
int main() {
unsigned int number = 5; // 示例:计算5的阶乘
std::cout << number << "! = " << factorial(number) << std::endl;
return 0;
}
```
在这个主函数中,我们包含了头文件,并且调用`factorial`函数来计算并打印出给定数字的阶乘值。
阅读全文