首页 > 试题广场 >

计算阶乘n!

[问答题]

计算阶乘n!

内容:

n!=1*2*3*...*n

输入说明:

一个整数n(<=20)

输出说明:

一行一个整数

输入样例:

5

输出样例:

120

#include <iostream>
#include <iomanip>
using namespace std;
 
int main()
{
double s=1;
int n;
cin>>n;
for(int i=1;i<=n;i++) s=s*i;
cout<<setiosflags(ios::fixed)<<setprecision(0)<<s;
return 0;
}
//计算阶乘n!
int main()
{
    int a,i,s=1;
    scanf_s("%d",&a);
    for ( i = 1; i <=a; i++)
    {
        s *= i;
    }
    printf("%d",s);
    return 0;
}
发表于 2022-03-14 16:54:00 回复(0)
#include<iostream>
using namespace std;
long long calculate(int a)
{
	if (a == 1 )
	{
		return 1;
	}
	else
		return a*calculate(a - 1);
}

int main()
{
	int n = 0;
	cin >> n;
	if (n > 20)
	{
		cout << "输入的整数已超出范围" << endl;
	}
	else
	{
		cout << "您输入的值为:" << n << endl;
		cout <<n<<"的阶乘为:"<< calculate(n) << endl;
	}
	system("pause");
	return 0;
}



发表于 2021-05-22 21:18:50 回复(0)
/*#include<stdio.h>
int wu(int w);
int main()
{  int w,t;
   printf("请输入一个数字:\n");
   scanf("%d",&w);
   t=wu(w);
   printf("阶乘为%d",t);
   return 0;} 

int wu(int w)
{ int j;
  if(w==1)
    j=1;
  else
    j=w*wu(w-1);
  return j;
}*/
/*#include<stdio.h>
int wujuan(int t);
int main()
{ int w,j;
  printf("请输入一个数字:\n");
  scanf("%d",&w);
  j=wujuan(w);
  printf("阶乘为%d",j);
  return 0;
}
int wujuan(int t)
{ int i,jc=1;
  for(i=1;i<=t;i++)
    jc=jc*i;
 return jc;
}*/
#include<stdio.h>
int main()
{ int wj,i,jc=1;
  printf("请输入一个数字:\n");
  scanf("%d",&wj);
  for(i=1;i<=wj;i++)
     jc=jc*i;
printf("%d\t阶乘为%d",wj,jc);
}

发表于 2021-05-22 10:33:51 回复(0)