编辑代码

#include <stdio.h>

int factorial1(int num){
    if (num>0){
        return factorial1(num-1)*num;
    }else{
        return 1;
    }
} 

int factorial2(int num){
    int sum=1;
    for(int i=2;i<=num;i++){
        sum=sum*i;
    }
    return sum;
}

int main () {
    printf("递归:%d\n",factorial1(4));
    printf("递推:%d",factorial2(4));
    return 0;
}