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

/*

程序功能:计算一个正整数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语言,求10000的阶乘(c语言代码实现)相关推荐

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  8. 求一个数的阶乘值c语言代码,求10000的阶乘(c语言代码实现)

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

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

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

最新文章

  1. linux 进程 内存 换入换出,linux - 在从bash进程替换完成输入后,如何继续发送到stdin? - 堆栈内存溢出...
  2. python爬虫小说代码示例-Python从零开始写爬虫-4 解析HTML获取小说正文
  3. 学python要多少钱-参加python培训要多少钱?
  4. Visual Studio 2010 新功能总结(一)
  5. Selenium自动化测试框架
  6. datatable导出Excel
  7. 组态王调用mysql存储过程_组态王与数据库通讯
  8. 年薪40W,如何高效准备大厂AI算法岗面试?
  9. 5G 是时候商用了?| 程序员硬核评测
  10. Linux初级阶段学习笔记-本地源YUM配置
  11. 信息图形化探索:图形化简历
  12. 在主函数中输入10个等长的字符串。用另一函数对他们排序。
  13. idea远程调试修改代码_利用IDEA远程调试代码
  14. 2020年全球激光雷达行业竞争格局分析,技术路线正处于快速发展迭代阶段「图」
  15. HaaS EDU场景式应用整体介绍
  16. 美团外卖前端可视化界面组装平台 —— 乐高
  17. Excel/pandas遍历各表拼接并对具体列进行文本筛选
  18. Vue2知识点 - RT
  19. Unity基于PDFRenderer插件实现文档查看功能
  20. 利用HOOKAPI拦截文件操作

热门文章

  1. java+icepdf+下载_Java使用icepdf将pdf文件按页转成图片
  2. ief12执行一次js才有效_陈列到底多久调一次才有效?
  3. java 叉号关闭_求助 java 如何编写JFrame窗体右上角红色打叉关闭按钮的事件?
  4. 基于JAVA+Swing+MYSQL的研究生科研信息管理系统
  5. 基于JAVA+SpringMVC+Mybatis+MYSQL的毕业论文设计管理系统
  6. 基于JAVA+SpringBoot+Mybatis+MYSQL的药房药品管理系统
  7. 基于JAVA+SpringMVC+Mybatis+MYSQL的漫画社区
  8. 解决gradle项目每次编译都下载gradle-x.x-all.zip gradle-x.x-bin.zip
  9. 【网络编程】time_wait状态产生的原因,危害,如何避免
  10. asp.net常见问题收集