为什么回归不起作用?

Ian*_*Ian -6 c++ return

我是c ++的初学者,我正在尝试使用递归编写阶乘.但是,不知何故,这return将无法奏效.这是我的代码:

#include <iostream>

using namespace std;

int factorial(int num) {
    if(num == 1) {
        return 1;
    }
    return num * factorial(num - 1);
}

int main() {
    int num;
    cout << "Please enter a number and I will do its factorial : ";
    cin >> num;
    factorial(num); 
}
Run Code Online (Sandbox Code Playgroud)

谁能告诉我为什么return不起作用?

顺便说一下,我在mac上使用sublime.

das*_*ght 8

返回工作完美,只是你的代码没有使用它.

调用不factorial(num)产生输出,只产生返回值.如果要打印,请添加cout << factorial(num) << endl;

  • @Deduplicator:因为意图是输出立即可用,因此刷新. (3认同)