C语言典型例题八——阶乘

简介: 用递归方法求n!解题思路:求n!可以用递推方法,即从1开始,乘2,再乘3……一直乘到n。这种方法容易理解,也容易实现。递推法的特点是从一个已知的事实(如1!=1)出发,按一定规律推出下一个事实(如2!=1!2),再从这个新的已知的事实出发,再向下推出一个新的事实(3!=32!)。n!=n*(n-1)!。

用递归方法求n!


1.解题思路:

求n!可以用递推方法,即从1开始,乘2,再乘3……一直乘到n。这种方法容易理解,也容易实现。递推法的特点是从一个已知的事实(如1!=1)出发,按一定规律推出下一个事实(如2!=1!2),再从这个新的已知的事实出发,再向下推出一个新的事实(3!=32!)。n!=n*(n-1)!。

2.代码如下:

8.1.png8.2.png

3.运行结果

8.3.png

4.提示

scanf_s()函数

为防止” scanf()在读取字符串时不检查边界,可能会造成内存泄漏“而导致程序运行异常。从vs2005开始,微软公司的vs提供了函数scanf_s()。其功能与原版函数scanf()相同,不同的是,在调用函数scanf_s()时,必须提供一个数字以表明最多读取多少位字符,以防止溢出。


相关文章
|
7月前
|
存储 C语言
C语言求阶乘
C语言求阶乘
118 0
|
7月前
|
C语言
c语言编程练习题:7-41 计算阶乘和
c语言编程练习题:7-41 计算阶乘和
151 0
|
7月前
|
C语言
c语言经典例题讲解(输出菱形,喝汽水问题)
c语言经典例题讲解(输出菱形,喝汽水问题)
99 0
|
C语言
C语言之使用递归的方法求n的阶乘
C语言之使用递归的方法求n的阶乘
247 0
|
6月前
|
机器学习/深度学习 人工智能 C语言
|
6月前
|
机器学习/深度学习 移动开发 人工智能
C语言程序设计例题
C语言程序设计50例
|
6月前
|
机器学习/深度学习 移动开发 人工智能
C语言编程例题分享
C语言编程经典100例
|
6月前
|
C语言
|
6月前
|
C语言
C语言---循环迭代---n的阶乘
C语言---循环迭代---n的阶乘
|
6月前
|
C语言
C语言---递归--求n的阶乘
C语言---递归--求n的阶乘