该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

/*

程序功能:计算一个正整数n的阶乘,目前最大能运算10000的阶乘,可秒杀。

程序意义:加强自己对于大数的处理。

说明:此程序对乘法和除法还未做任何优化,如果用上位运算的知识应该可以继续优化。 */ #include #define N 10000//宏定义数组长度 int main()

{

int nResult[N] = {0};//必须用一个足够大的数组来存储计算结果来确保计算结果不会溢出

int nDigit = 1; //位数

int nTemp = 0;//阶乘的任一元素与临时结果的某位的乘积结果

int i = 0;

int j = 0;

int nCarry = 0;//进位

int nNum = 0;

printf("Please input n:");

scanf("%d", &nNum);

nResult[0] = 1;//先将结果初始化为1

for (i = 2; i <= nNum; i++)//开始阶乘,阶乘元素从2开始一次“登场”

{

//按最基本的乘法运算思想来考虑,将临时结果的每位与阶乘元素相乘

for (j = 1, nCarry = 0; j <= nDigit; j++)

{

nTemp = nResult[j - 1]*i + nCarry;//相应阶乘中的一项与当前所得临时结果的某位相乘且加上进位

nResult[j - 1] = nTemp % 100000;//更新临时结果的位上信息

nCarry = nTemp / 100000;//看是否有进位

}

while (nCarry)//判断当前临时结果的最高位是否有进位

{

nResult[nDigit++] = nCarry % 100000;//新增一位

nCarry /= 100000;//看是否还能继续进位

}

}

for (i = nDigit; i >= 1; i--)//显示结果

{

printf("%d", nResult[i - 1]); if (0 == nResult[i - 1])

{

printf("0000");//因为每个数组元素存储5位数字,每次输出项为0时需补上缺少的4个零

}

}

printf("\r\n");

return 0;

}

c语言实现4的阶乘,求10000的阶乘(c语言代码实现)相关推荐

  1. c语言如何实现阶乘,求10000的阶乘(c语言代码实现)

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /* 程序功能:计算一个正整数n的阶乘,目前最大能运算10000的阶乘,可秒杀. 程序意义:加强自己对于大数的处理. 说明:此程序对乘法和除法还未做任何优 ...

  2. c语言100000阶乘,求10000的阶乘(c语言代码实现)

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /* 程序功能:计算一个正整数n的阶乘,目前最大能运算10000的阶乘,可秒杀. 程序意义:加强自己对于大数的处理. 说明:此程序对乘法和除法还未做任何优 ...

  3. c语言10000的阶乘,求10000的阶乘(c语言代码实现)

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /* 程序功能:计算一个正整数n的阶乘,目前最大能运算10000的阶乘,可秒杀. 程序意义:加强自己对于大数的处理. 说明:此程序对乘法和除法还未做任何优 ...

  4. 50的阶乘用c语言编写,求10000的阶乘(c语言代码实现)

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /* 程序功能:计算一个正整数n的阶乘,目前最大能运算10000的阶乘,可秒杀. 程序意义:加强自己对于大数的处理. 说明:此程序对乘法和除法还未做任何优 ...

  5. 阶乘在c语言代码大全,求10000的阶乘(c语言代码实现)

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /* 程序功能:计算一个正整数n的阶乘,目前最大能运算10000的阶乘,可秒杀. 程序意义:加强自己对于大数的处理. 说明:此程序对乘法和除法还未做任何优 ...

  6. n阶乘的c语言代码,求10000的阶乘(c语言代码实现)

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /* 程序功能:计算一个正整数n的阶乘,目前最大能运算10000的阶乘,可秒杀. 程序意义:加强自己对于大数的处理. 说明:此程序对乘法和除法还未做任何优 ...

  7. 一万的阶乘c语言方法,求10000的阶乘(c语言代码实现)

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /* 程序功能:计算一个正整数n的阶乘,目前最大能运算10000的阶乘,可秒杀. 程序意义:加强自己对于大数的处理. 说明:此程序对乘法和除法还未做任何优 ...

  8. 如何用c 语言编写阶乘程序,求10000的阶乘(c语言代码实现)

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /* 程序功能:计算一个正整数n的阶乘,目前最大能运算10000的阶乘,可秒杀. 程序意义:加强自己对于大数的处理. 说明:此程序对乘法和除法还未做任何优 ...

  9. 100的阶乘c语言代码,求10000的阶乘(c语言代码实现)

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /* 程序功能:计算一个正整数n的阶乘,目前最大能运算10000的阶乘,可秒杀. 程序意义:加强自己对于大数的处理. 说明:此程序对乘法和除法还未做任何优 ...

最新文章

  1. 用Matplotlib轻松复刻分析图,看看哪个城市买房最自由
  2. 站点选择技术RHI、DNS
  3. Java接口interface
  4. 反向 Dropout,韩松团队最新工作NetAug:提高Tiny神经网络性能的新训练方法
  5. python中 getnode用法_node.js 爬虫入门总结
  6. Redis数据结构详解之Set(三)
  7. bean初始化、注销
  8. Linux 性能监测
  9. 华为p20支持手机云闪付吗_余承东:明年华为智能手机全面支持鸿蒙系统
  10. Hadoop HBase
  11. FinSpy 发布 Mac 和 Linux OS 版本攻击埃及组织机构
  12. figma客户端_小白的Figma入门手册
  13. c#垂直投影法_形象理解“梯度”与“法向量”的关系
  14. python stderr 中文_【Python入门教程】 超详细讲解,1小时学会Python(不会来找我!)...
  15. 使用mouse without borders无界键盘鼠标工具实现一套键盘鼠标控制两台电脑(非常的奈斯)
  16. Code For Better 谷歌开发者之声——Google Cloud谷歌云
  17. ARM PWN基础教程
  18. 2020年计算机学什么语言,最受企业认可的十大编程语言,2020年学习不后悔
  19. java 依赖倒置_Java设计原则—依赖倒置原则(转)
  20. jQuery easyUI设置表格中的背景色

热门文章

  1. 基于PCA的人脸检测(Matlab版代码)
  2. 华为OD机试 - 最多等和不相交连续子序列(Java JS Python)
  3. 史上最全第三方地图服务汇总【天地图/高德/百度/腾讯/谷歌地图等】
  4. GAN深度强化学习1
  5. CDH6中Impala3报错UDF ERROR: String to Decimal parse failed
  6. 轻量级人脸识别算法之DBFace
  7. EN 12259-4固定消防系统水马达报警器—CE认证
  8. Altium designer如何快速定义板子外形(直角和圆角)
  9. 看完这篇 教你玩转渗透测试靶机vulnhub——MoneyBox: 1
  10. 【NYOJ】[599]奋斗的小蜗牛