阶乘函数中的标点错误?

时间:2013-09-07 17:56:15

标签: factorial

我收到以下错误:预期“;”在宣言结束时 我在行中得到了这个:int factorial(int q){

想法?

谢谢,

史蒂夫

#include <iostream>
using namespace std;


int n=0;
int factorial(int q);
int combination(int i, int j);


int main() {
    cout <<"Enter n "<<endl;
    cin >>n;
    for (int i = 0; i <= n-1; i++) {
        for (int j = 0; j<=i; j++) {
            cout << combination (i, j) << endl;
        }
    }
    return 0;
}

int combination(int i, int j) {
    return factorial(i) / (factorial(j)*factorial(i-j));
    {


int factorial (int q) {
    int result = 1;
    if (q == 0) {
        result = 1;
    } else {
        for (int l=1; l <= q; l++) {
            result *=l;
        }

    }
       return result;
}

由于错误,这将无法编译。

1 个答案:

答案 0 :(得分:0)

上面的combination函数未正确关闭 - 您输入了右括号错误。它应该是:

int combination(int i, int j) {
    return factorial(i) / (factorial(j)*factorial(i-j));
}