广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C语言计算大数阶乘的方法
  • 503
分享到

C语言计算大数阶乘的方法

2024-04-02 19:04:59 503人浏览 独家记忆
摘要

本文实例为大家分享了C语言计算大数阶乘的具体代码,供大家参考,具体内容如下 问题描述 输入一个正整数n,输出n!的值。 其中n!=1*2*3*…*n。 算法描述 n!可能很大,而计算

本文实例为大家分享了C语言计算大数阶乘的具体代码,供大家参考,具体内容如下

问题描述

输入一个正整数n,输出n!的值。
其中n!=1*2*3*…*n。

算法描述

n!可能很大,而计算机能表示的整数范围有限,需要使用高精度计算的方法。使用一个数组A来表示一个大整数a,A[0]表示a的个位,A[1]表示a的十位,依次类推。
将a乘以一个整数k变为将数组A的每一个元素都乘以k,请注意处理相应的进位。

输入格式

输入包含一个正整数n,n<=1000。

输出格式

输出n!的准确值。

样例输入

10

样例输出

3628800


#include <stdio.h>
#define N 10000
int main()
{
 int a[N]={1};
 int k=0,l=1,n;
 int i,j;
 scanf("%d",&n);
 for(i=1;i<=n;i++)
 {
  for(j=0;j<l;j++)
  {
   a[j]=a[j]*i+k;
   k=a[j]/10000;
   a[j]=a[j]%10000;
  }
  if(k)
  {
   a[j]=k;
   l++;
   k=0;
  }
 }
 printf("%d",a[l-1]);
 for(i=l-2;i>=0;i--)
  printf("%04d",a[i]);
 printf("\n");
 return 0;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

--结束END--

本文标题: C语言计算大数阶乘的方法

本文链接: https://www.lsjlt.com/news/125454.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C语言计算大数阶乘的方法
    本文实例为大家分享了C语言计算大数阶乘的具体代码,供大家参考,具体内容如下 问题描述 输入一个正整数n,输出n!的值。 其中n!=1*2*3*…*n。 算法描述 n!可能很大,而计算...
    99+
    2022-11-12
  • 如何在C语言中计算大数阶乘
    今天就跟大家聊聊有关如何在C语言中计算大数阶乘,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。C语言是什么C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发,使用C语...
    99+
    2023-06-15
  • c语言如何计算n的阶乘
    本篇内容主要讲解“c语言如何计算n的阶乘”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“c语言如何计算n的阶乘”吧!c语言计算n的阶乘的方法:1、通过for循环计算阶乘,代码如“for (i = ...
    99+
    2023-07-04
  • 五种C程序计算阶乘方法 c语言实现1到n的阶乘1*2*3*.....*n的累乘计算,使用不同方法实现,五种计算阶乘的方法
    题目: 题目分析:        首先要清楚阶乘定义,所谓 n 的阶乘,就是从 1 开始乘以比前一个数大 1 的数,一直乘到 n,用公式表示就是:1×2×3×4×…×(n-2)×(n-1)×n=n! 具体的操作: 利用循环解决问题,设循环...
    99+
    2023-10-21
    c++ c语言 python java c#
  • C语言中如何求大数的阶乘
    这篇“C语言中如何求大数的阶乘”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C语言中如何求大数的阶乘”文章吧。首先定义一个函...
    99+
    2023-06-16
  • python计算数的阶乘的方法
    方法:1、使用循环;2、使用递归;3、使用math模块;4、使用reduce函数。阶乘是一个非常常见的数学概念,指的是一个正整数 n 的阶乘是所有小于等于 n 的正整数的乘积。阶乘通常用符号 n! 来表示,其中 n 是一个正整数。计算阶乘是...
    99+
    2023-11-13
    python 阶乘
  • C语言计算大数相加的方法
    本文实例为大家分享了C语言计算大数相加的具体代码,供大家参考,具体内容如下 问题描述 输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。 算法描述   由于a和b都比较...
    99+
    2022-11-12
  • C语言求阶乘之和的三种实现方法(先阶乘再累加)
    目录题目:方法一:使用一层for循环实现 代码简单快捷容易理解方法二:使用两层for循环嵌套方法三:函数递归实现总结题目: 此处题目是以1-20的阶乘之和举例 方法一:使用一层fo...
    99+
    2022-11-13
  • python计算阶乘的两个函数用法
    目录计算阶乘的两个函数用法1.reduce()2.factorial()计算阶乘的5种方法1.利用循环,如下代码演示2.导入functools中的reduce模块3.导入math库,...
    99+
    2022-11-11
  • R语言RcppEigen计算点乘与矩阵乘法连乘算法错误解决方法是什么
    本篇内容主要讲解“R语言RcppEigen计算点乘与矩阵乘法连乘算法错误解决方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“R语言RcppEigen计算点乘与矩阵乘法连乘算法错误解决方法...
    99+
    2023-06-25
  • c语言数组大小如何计算
    在C语言中,可以使用sizeof运算符来计算数组的大小。sizeof运算符返回的是数组占用的总字节数。例如,对于一个int类型的数组...
    99+
    2023-09-28
    c语言
  • Java两种方法计算出阶乘尾部连续0的个数
    第一个方法是计算出阶乘然后计算字符串的0的个数。 import java.util.Scanner; import java.math.BigDecimal; import j...
    99+
    2022-11-11
  • 如何使用C语言计算大数相加
    这篇文章给大家介绍如何使用C语言计算大数相加,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。C语言是什么C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发,使用C语言可以以简易的方式编译、处理低级存储器...
    99+
    2023-06-15
  • C语言实现计算器的两种方法
    本文实例为大家分享了C语言实现计算器的具体代码,供大家参考,具体内容如下 C语言计算器两种方法 //一般做法 #include<stdio.h> #include<...
    99+
    2022-11-13
  • c语言实现向上取整计算方法
    目录c语言向上取整计算c语言向上取整的一点技巧c语言向上取整计算 用整数N 除以 M,要求向上取整数 int n = (N + M -1) / M ; 简化后就是: int n= (...
    99+
    2022-11-13
  • C语言数组长度的计算方法实例总结(sizeof与strlen)
    目录前言1. 数组的创建2. 求解数组的长度注意:总结:前言 最近在重新学习C语言,学习中发现之前对数组长度的计算方法模糊不清。因此做个总结。 首先要明白什么是数组。 数组是一组相同...
    99+
    2022-11-13
  • C语言计算连续无序数组中缺省数字方法详解
    求缺省数字时可以使用异或进行求解,时间复杂度为O(N)。 我们都知道,异或的特点就是相同为0,相异为1 ,比如: 这是3和3相异或的结果,为0, 同样地,有4^4 = 0,5^5 ...
    99+
    2023-02-08
    C语言无序数组缺省数字 C语言计算无序数组中缺省数字 C语言缺省数字
  • C语言如何计算一个整数的位数
    目录计算一个整数的位数关于如何获取整数各个位然后知道通过 i/10 便可"清除"个位数计算一个整数的位数 只需要设计一个计时器,因为C语言中除法只留下整数部分,所...
    99+
    2022-11-16
    C语言整数位数 计算整数的位数 C计算一个整数位数
  • C语言求最大公约数的方法有哪些
    C语言求最大公约数的方法有以下几种:1. 辗转相除法:即用较大的数除以较小的数,然后用余数代替较大的数,再用较小的数除以余数,直到余...
    99+
    2023-08-12
    C语言
  • PHP计算数组元素乘积的方法有哪些
    这篇文章主要介绍“PHP计算数组元素乘积的方法有哪些”,在日常操作中,相信很多人在PHP计算数组元素乘积的方法有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”PHP计算数组元素乘积的方法有哪些”的疑惑有所...
    99+
    2023-06-25
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作