目录

一、问题

二、问题分析

三、代码实现

四、运行结果


一、问题


通过c语言编程计算n的阶乘。

二、问题分析

1、首先明确n的阶乘在数学中怎么算:1*2*……*(n-1)*n = n!

2、怎么用c语言来实现呢?

(1)首先要做的是要有这n个数字,那么我们可以借助while循环、do_while循环、或者for循环来实现。

(2)有这n个数字了,那么子再办法把他们乘在一起,赋给一个变量就行了。

三、代码实现

1、while语句循环来实现,代码如下

#include "stdio.h"
int main()
{
int ret = 1;int n = 0;int i = 1;scanf_s("%d", &n);while (i <= n){ret *= i;i++;}printf("%d\n", ret);
return 0;
}

2、do_while语句来实现,代码如下

#include "stdio.h"
int main()
{   int n = 0;int i = 1;int ret = 1;scanf_s("%d", &n);//输入n的值do{ret *= i;i++;} while (i <= n);printf("%d", ret);
return 0;
}

3、for语句来实现。代码如下

#include "stdio.h"
int main()
{int i = 1;int n = 0;int ret = 1;scanf_s("%d", &n);for (i = 1; i <= n; i++){ret *= i;}printf("%d", ret);
return 0;
}

四、运行结果

当通过键盘输入5时,程序将5赋值给n,那么就是求5的阶乘,最后输出结果120.

以上就是c语言求n的阶乘的3种方法,希望这篇文章对你有所帮助!!!

喜欢的话点个赞吧!!

欢迎评论交流,若有错误还请改正!!!

C语言入门——计算n的阶乘相关推荐

  1. 1000的阶乘用c语言实现,用C语言实现计算大数的阶乘

    #include #define SIZE 1000 int BigFact(int m, short data[]); int main() { short data[SIZE] = { 0 };/ ...

  2. c语言双循环计算n的阶乘,用C语言用循环实现N的阶乘

    匿名用户 1级 2014-03-04 回答 不要用数组,用vector来实现相应的功能,我给你写个大概的框架,你向里面添加就好了 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ...

  3. C语言入门 -- 计算两骰子之和出现概率(2021/2/2)

    掷骰子 掷两个骰子,计算两值之和的出现概率 掷骰子 编写一个程序来模拟两个骰子的滚动. 程序应该使用rand()来掷第一个骰子,并且应该再次使用rand()来掷出第二个骰子.然后计算这两个值的总和. ...

  4. C语言入门——求1到n阶乘之和(1≤n≤20)

    C语言入门--求1到n阶乘之和(1≤n≤20) 一.问题 Problem Description 求1到n的阶乘之和 Input 输入一个正整数n (1 ≤ n ≤ 20) Output 输出一个数, ...

  5. c语言圆周率计算_C语言入门这一篇就够了

    c语言入门 C语言一经出现就以其功能丰富.表达能力强.灵活方便.应用面广等特点迅速在全世界普及和推广.C语言不但执行效率高而且可移植性好,可以用来开发应用软件.驱动.操作系统等.C语言也是其它众多高级 ...

  6. C语言入门:立体几何计算题

    C语言入门:立体几何计算题 设圆半径r,圆柱高h , 求圆周长C1,半径为r的圆球表面积Sb,圆半径r,圆柱高为h的圆柱体积Vb. 用scanf输入数据,输出计算结果 输入:两个double型浮点数, ...

  7. c语言作业 求1到n的阶乘和,C语言,计算1到n的阶乘求和问题

    C语言,计算1到n的阶乘求和问题以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! C语言,计算1到n的阶乘求和问题 在fo ...

  8. c语言 n阶阶乘尾0个数,计算n的阶乘(n!)末尾0的个数

    题目: 给定一个正整数n,请计算n的阶乘n!末尾所含有"0"的个数. 举例: 5!=120,其末尾所含有的"0"的个数为1: 10!= 3628800,其末尾所 ...

  9. C语言使用递归法计算n的阶乘

    C语言使用递归法计算n的阶乘 #include <stdio.h> long Fact(int n); int main(){int n;long ret;printf("Inp ...

最新文章

  1. VMware猛涨vSphere价格 并减少版本数量
  2. the resource is not on the build path of a java project
  3. Numpy 生成随机数和乱序
  4. HikariCP 高性能的 JDBC 连接池
  5. 现代软件工程系列 学生的精彩文章 (1)
  6. 备案域名绑定服务器后 提示需要备案_关于天行数据ICP备案信息变更的重要通知...
  7. jmeter验证WEB页面的href链接请求
  8. 你应该知道的数仓安全
  9. shell使用sshpass自动验证root密码
  10. Delphi的子类化控件消息, 消息子类化
  11. [leetcode] 题型整理之动态规划
  12. mysql字段类型解析_MySQL数据类型之数字类型详细解析
  13. read()/write()的生命旅程之三——第三章:write()
  14. CSS颜色代码 颜色值 颜色名字大全
  15. java ssh ssm_JAVA --- SSH和SSM的区别
  16. Win11怎么打开网络发现?Win11启用网络发现教程
  17. [Graphics]自组织植物建模方法(ContinousLassoBrush)
  18. openwrt php 编译环境,openwrt基础编译教程
  19. django数据库错误django. db. utils. OperationalError: ( 1044,‘Access denied for user’ erqueque’@' %’to‘dj’
  20. switchport trunk native 的原理与作用

热门文章

  1. 如何安装FriendlyARM USB Download Driver Setup(by 星空武哥)
  2. 数据库原理 西安电子科技大学(第三版) 付婷婷 第三章 课后习题答案
  3. pnpm 构建 Monorepo workspace项目
  4. 【实验记录】--大疆智图的辐射定标
  5. 都是北方蛮族,为什么欧洲的能开创现代文明,东亚的却只能“能歌善舞”?
  6. angular阻止事件冒泡
  7. 适合入门的一些现成的人工智能项目
  8. chrome v8引擎
  9. 当当网 用什么数据库 mysql_当当网爬取数据到MySQL数据库,没有信息。
  10. Amanero combo 384 升级固件支持原生 DSD 解码