数的阶乘,想必大家都不陌生,原理也很清楚,就是给定一个正整数,然后求出所有小于以及等于该正整数的积。
这里我们要清楚几点:
1、负数没有阶乘,所以默认是正整数。
2、0的阶乘是1,这是人为规定的,只需要记住即可。
那么,今天我们的重点是用C语言实现数的阶乘,不过我提出了一个要求:利用我们前些天所学的知识,用函数以及递归函数的方法来实现数的阶乘。
这样的话,既能帮助我们复习函数和递归函数的方法,也能巩固我们的C语言基础。
在正式用C语言实现数的阶乘前,我们先来理一理逻辑。
数的阶乘,除了0的阶乘是1外,正整数的阶乘就是所有小于以及等于它的积。
给定一个数为5,那么5的阶乘就是5!=1x2x3x4x5 = 120。
这里我们需要用到一个循环,就是不停地遍历比5小的数即可。
遍历出1、2、3、4、5之后,再不停地进行相乘。
初始值为1,那么第一次相乘为1,第二次就是1与2相乘,直到第五次就是前四次相乘的积与5相乘,最终得到120。
首先是给出流程图,方便大家理解。
用三种方法进行代码实现
第一种:普通的直接在主函数中写出所有代码。
用该方法就比较直观了,就是遍历给定数,从1开始到它本身,然后不停相乘,注意,我在这里一开始用了给定数来相乘,但其实这是有问题的,还是得从1开始,毕竟1的阶乘是从1开始的。
#include
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/21799.html