输入样例: 输出样例:
n=3 The factorial of 3 is 6
n=12 The input is out of range
n=-2 The input is out of range
怎么写
望采纳! 谢谢
#include <stdio.h>
int cal(int n){
if (n == 1)
return 1;
else
return n * cal(n -1);
}
int main()
{
int num;
int sum =0;
scanf("%d", &num);
if (num <= 0 || num >=10)
{printf("The input is out of range");
return 0;}
else
sum = cal(num);
printf("The factorial of %d is %d", num, sum);
return 0;
}
/*0被加入到out of range*/
#include <stdio.h>
int func(int a)
{
if(a > 10 || a <= 0)
return 0;
else if (a == 1)
return 1;
else
return a * func(a - 1);
}
int main()
{
int a[3]={3, 12, 0};
int i;
int result;
for(i=0; i < 3; i++){
result = func(a[i]);
if(result)
printf("n = %d The factorial of %d is %d\n", a[i], a[i], result);
else
printf("n = %d The input is out of range\n", a[i]);
}
return 0;
}
#include <iostream>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <string>
#include <cstring>
#include <vector>
#include <stack>
#include <list>
#include <limits.h>
using namespace std;
int jc(int n){
if(1==n){
return 1;
}
return n*jc(n - 1);
}
int main()
{
int n;
cin>>n;
cout<<jc(n);
return 0;
}