news 2026/4/15 13:36:38

把90!输出到屏幕上(二)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
把90!输出到屏幕上(二)

输出90!到屏幕上,并计算出要表示它需要多少个整型数及最高整型数的值。

#include <stdio.h> #include <stdlib.h> #define N 90 //求N! #define ZX 10000000 //最小的8位数 #define DASHU struct shu DASHU { size_t gs; // 数组中当前元素的个数 int *kt; // 指向用于存放数据的连续内存空间中开始的那个“int”数据 }; void tuichu ( void ) ; void cheng ( DASHU * , int ); void jinwei ( DASHU * ) ; void shuchu ( DASHU ) ; int main(void) { DASHU dashu; int i; dashu.kt=(int*)malloc(sizeof(int)); // 申请第一个int if(dashu.kt==NULL) tuichu(); dashu.gs=(size_t)1; *dashu.kt=1; // 初始值为1 for(i=1;i<=N;i++) cheng(&dashu, i); shuchu(dashu); free(dashu.kt); // 不再使用一定要释放 getchar(); return 0; } void tuichu ( void ) { printf("抱歉,空间不够"); getchar(); exit(1); // 程序退出执行 } //乘以n void cheng ( DASHU * ds, int n ) { int i; for ( i = 0 ; i < ds -> gs ; i ++) { ds->kt[i]*=n; } jinwei(ds); } //进位 void jinwei(DASHU *ds) { int i; for(i=0; i < ds->gs-1; i++) { ds->kt[i+1]+=ds->kt[i]/ZX; ds->kt[i]%=ZX; } //增加空间 if(ds->kt[ds->gs-1]>=ZX) // 最高"int"数的值超过ZX { ds->kt=realloc(ds->kt,sizeof(int)*(ds->gs+1)); if(ds->kt==NULL) tuichu(); ds->kt[ds->gs]=ds->kt[ds->gs-1]/ZX; ds->kt[ds->gs-1]%=ZX; ds->gs++; } } // 输出 void shuchu ( DASHU ds ) { int i = ds.gs - 1 ; // 从高位开始输出 printf("%d %d\n",(int)ds.gs, ds.kt[i]); // 输出存放阶乘的整型数的个数及最高的7位十进制数 /* 输出完整的阶乘 */ printf("%d",ds.kt[i--]); while ( i>=0 ) printf("%07d",ds.kt[i--]); //需要输出7位且0是必要的 putchar('\n'); }

输出结果

20 148571
1485715964481761497309522733620825737885569961284688766942216863704985393094065876545992131370884059645617234469978112000000000000000000000

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/14 2:22:43

RAG上下文构建完全指南:从召回策略到最佳实践,一篇搞定!建议收藏

文章探讨了RAG系统中构建上下文的关键问题&#xff0c;特别是当语义召回的多个chunk来自不同段落时如何选择上下文内容。分析了直接使用召回chunk与召回完整段落两种方案的优缺点&#xff0c;指出应根据文档长度、场景需求选择折中方案。有时为减少token消耗并提升模型准确性&a…

作者头像 李华
网站建设 2026/4/14 23:58:01

AI产品经理深度转型指南!

&#x1f525;AI产品经理&#xff0c;最近的市场又开始变得火热了起来。&#x1f4a1;大部分公司已经开始从原来的巨量投入&#xff0c;变成盈利的状态了。另外算力成本、数据采集和标注成本也在不断下降&#x1f4c9;&#xff01;AI行业已经开始迎来了新的拐点&#x1f4c8;&a…

作者头像 李华
网站建设 2026/4/7 19:32:57

大数据连接池配置:结构化数据访问优化

大数据连接池配置&#xff1a;结构化数据访问的“资源平衡术” 一、引入&#xff1a;大数据场景的“连接之痛” 去年双11零点&#xff0c;某电商的实时销售分析系统突然陷入瘫痪&#xff1a; 运营同学要查看“5分钟内TOP10热销商品”&#xff0c;点击查询后等待了18秒才加载…

作者头像 李华
网站建设 2026/4/12 23:52:53

大数据毕设项目:基于django+大数据平台的短视频推荐系统设计与实现(源码+文档,讲解、调试运行,定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/4/6 10:59:28

从文本到可视化:Java企业数据查询的智能进化之路

在数字化转型的浪潮中&#xff0c;数据已经成为企业的核心资产。对于以Java技术栈为核心的企业而言&#xff0c;如何高效挖掘私有数据的价值&#xff0c;让数据从“沉睡的数字”转变为“决策的依据”&#xff0c;是亟待解决的关键问题。传统的数据查询模式中&#xff0c;业务人…

作者头像 李华
网站建设 2026/4/11 20:08:29

C内存布局

一、变量作用域与存储类别根据定义位置和存储方式&#xff0c;变量可分为以下几种类型&#xff1a;int degree 0; // 全局变量&#xff0c;文件作用域&#xff08;其他文件声明后可引用&#xff09; static int cnt 0; // 静态全局变量&#xff0c;文件作用域&…

作者头像 李华