Scusate ho sbagliato proprio a scrivere il codice... il mio problema era questo in realtà, non riesco a capire perché scrivendo così:
while(n > 1) {
fatt = fatt * (n - 1);
}
Il codice si blocca.
BTW comunque ho riscritto il codice ed adesso funziona. Ho anche fatto in modo che faccia il fattoriale di numeri negativi. Pensate sia tutto ok? Grazie 1K per l'aiuto.
#include <stdio.h>
#include <stdlib.h>
int num;
int fatt = 1;
int main(int argc, char** argv) {
printf("Calcolo del fattoriale di un numero\n");
printf("Inserire un numero intero positivo o negatico: ");
scanf("%d", &num);
if(num > 0){
int n = num;
while(n > 1) {
fatt = fatt * n;
n--;
}
}
if(num < 0) {
int n = num;
n = n * -1;
while(n > 1) {
fatt = fatt * n;
n--;
}
fatt = fatt * -1;
}
printf("Il fattoriale del numero %d è %d", num, fatt);
return (EXIT_SUCCESS);
}