Простая C-факториальная программа не работает должным образом с большими числами

Это простая факториальная программа на C Большие цифры отображают не то, что нужно. Иногда отрицательные числа и для факториала 100 выводит 0. Я тоже длинный, как я могу это исправить? factorialExample

#include <stdio.h>
long factorial(long n){
if (n == 0)
    return 1;
  else
    return(n * factorial(n-1));
}
int main()
{
printf("%ld", factorial(50));
}

0 ответов

Другие вопросы по тегам