news 2026/4/29 16:30:13

把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/26 23:09:14

如何用Agentic AI 提升客户服务质量?提示工程架构师的5个技巧

如何用Agentic AI 提升客户服务质量?提示工程架构师的5个技巧 关键词 Agentic AI、客户服务质量、提示工程架构师、技巧、自然语言处理 摘要 本文聚焦于如何运用Agentic AI提升客户服务质量,为提示工程架构师提供五个实用技巧。首先介绍了Agentic AI和客户服务领域的背景…

作者头像 李华
网站建设 2026/4/26 7:06:02

例说FPGA:可直接用于工程项目的第一手经验【2.7】

11.4 IP核配置——FIFO配置 本实例例化了3个FIFO,即video_ctrl.v模块例化的video_fifo、ddr_avl_bridge.v模块例化的rdfifo_for_sdram和wrfifo_for_sdram,关于它们的基本配置,说明如下。 1.视频时域变换FIFO配置(video_fifo) 基本的配置请参考工程实例8的FIFO配置说明,…

作者头像 李华
网站建设 2026/4/25 7:54:29

Java企业AI升级:高效文档处理与知识检索的核心路径 在数

Java企业AI升级&#xff1a;高效文档处理与知识检索的核心路径在数字化转型深入推进的当下&#xff0c;Java企业面临着海量非结构化数据的管理与利用难题。PDF合同文档、Excel业务报表、TXT日志文件以及分散在各类网页中的行业资讯&#xff0c;构成了企业重要的知识资产&#x…

作者头像 李华
网站建设 2026/4/26 11:46:32

Matthias Mann万万没想到单细胞蛋白质组学

美国纽约——为纪念GenomeWeb成立25周年&#xff0c;正专访该领域领军人物&#xff0c;回顾基因组学过去25年的发展&#xff0c;同时展望未来前景。 本系列完整内容可点击此处查看 https://www.genomeweb.com/topic/genomeweb-25th-anniversary 在本次访谈中&#xff0c;对话…

作者头像 李华
网站建设 2026/4/27 7:51:44

TypeScript 入门到精通:让你的 JavaScript 代码更具可维护性

第一部分&#xff1a;TypeScript核心概念与设计哲学 渐进式类型系统设计理念 TypeScript最显著的设计特点是其渐进式类型系统。与传统的静态类型语言不同&#xff0c;TypeScript不强制要求从一开始就为所有变量添加类型注解&#xff0c;而是允许开发者在需要时逐步添加类型约…

作者头像 李华
网站建设 2026/4/19 9:00:30

仿生汗腺蒸发设计

&#x1f393;作者简介&#xff1a;科技自媒体优质创作者 &#x1f310;个人主页&#xff1a;莱歌数字-CSDN博客 &#x1f48c;公众号&#xff1a;莱歌数字&#xff08;B站同名&#xff09; &#x1f4f1;个人微信&#xff1a;yanshanYH 211、985硕士&#xff0c;从业16年 从…

作者头像 李华