>>895
>>894でいけるよ。
階乗計算はdo-whileを抜けてからやるから問題ない。
あと変数は小文字がいいかと。

#include <stdio.h>

int fact(int n);

int main()
{
int n;

do{
printf("N=");
scanf("%d",&n);
}while(n<=0);

n = fact(n);
printf("N! = %d\n" , n);

}

int fact(int n)
{
if(n == 0) return(1);
else return( n * fact(n - 1));
}