C语言---计算n的阶乘

        阶乘的概念:一个正整数的阶乘(factorial)是所有小于及等于该数的正整数的积,且0的阶乘为1,自然数n的阶乘写作n! 

任何大于等于1 的自然数n 阶乘表示方法:

n!=1×2×3×…×(n-1)×n 或 n!=n×(n-1)!

0!=1
1! = 1
2! = 2 * 1 = 2
3! = 3 * 2 * 1 = 6

n! = n * (n-1) *… * 2 * 1

第一种:用递归的方法计算(函数调自己

//递归
int fun(int n)
{
	if (n > 1)//限制条件
	{
		return n * fun(n - 1);
	}
	else//0 ,1的阶乘
		return 1;
}
int main()
{
	int n = 0;
	scanf("%d", &n);
	int a=fun(n);
	printf("%d ", a);
	return 0;
}

 第二种:用非递归的方法计算

int main()
{
	int n = 0;
	int sum = 1;
	int i = 1;
	scanf("%d", &n);
	for (i = 1; i <= n; i++)
	{
		sum *= i;//sum=sum*i
	}
	printf("%d\n", sum);
	return 0;
}

相关推荐

  1. C语言---计算n

    2024-02-05 19:36:04       55 阅读
  2. C语言:实现N

    2024-02-05 19:36:04       32 阅读
  3. c语言:用for循环输出前n

    2024-02-05 19:36:04       32 阅读
  4. C语言

    2024-02-05 19:36:04       20 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-05 19:36:04       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-05 19:36:04       100 阅读
  3. 在Django里面运行非项目文件

    2024-02-05 19:36:04       82 阅读
  4. Python语言-面向对象

    2024-02-05 19:36:04       91 阅读

热门阅读

  1. SQL布尔盲注、延迟注入和堆叠注入

    2024-02-05 19:36:04       50 阅读
  2. AI智能电销机器人有哪方面的技术优势?

    2024-02-05 19:36:04       46 阅读
  3. 网络安全-端口扫描和服务识别的几种方式

    2024-02-05 19:36:04       60 阅读
  4. Python——字节串bytes的编解码

    2024-02-05 19:36:04       55 阅读
  5. Django_基本增删改查

    2024-02-05 19:36:04       46 阅读
  6. C语言——教师信息管理系统

    2024-02-05 19:36:04       44 阅读
  7. 在(龙芯 3A6000)loongnix下编译syncthing

    2024-02-05 19:36:04       54 阅读