当前位置: 首页 > news >正文

C语言学习笔记20260527-用递归实现输入一个非负整数,返回组成它的数字之和/n的k次方

一.写一个递归函数DigitSum(n)输入一个非负整数返回组成它的数字之和。递归思想每次取最后一位 n % 10 剩下数字的和递归递归出口n 是个位数时返回 n。二.编写一个函数实现n的k次方使用递归实现核心逻辑double Pow(double n, double k){if (k 0) return 1.0; // 出口if (k 0) return 1.0 / Pow(n, -k); // 负数次方if (k 不是整数) 用数学公式计算递归无法直接算小数else return n * Pow(n, k-1); // 整数递归}三. 代码#define_CRT_SECURE_NO_WARNINGS#includestdio.h//写一个递归函数DigitSum(n)输入一个非负整数返回组成它的数字之和//例调用DigitSum(1729),则应该返回1729,它的和是19//递归思想//每次取最后一位 n % 10 剩下数字的和递归//递归出口//n 是个位数时返回 n// 递归函数求数字之和intDigitSum(intn){// 递归出口个位数直接返回if(n10)returnn;// 最后一位 前面所有位的和递归returnn%10DigitSum(n/10);}//DigitSum(1234)// 4 DigitSum(123)// 4 3 DigitSum(12)// 4 3 2 DigitSum(1)// 4 3 2 1// 10//编写一个函数实现n的k次方使用递归实现// 递归求次方支持 正数、负数、小数、0doublePow(doublen,doublek){// 出口任何数的 0 次方 1if(k0)return1.0;// 指数为负数if(k0)return1.0/Pow(n,-k);// 指数为小数递归 数学公式if(k0k!(int)k){if(n0){printf(错误负数不能计算小数次方\n);return0;}returnexp(k*log(n));}// 整数指数递归returnn*Pow(n,k-1);}intmain(){intsum0;intnum0;printf(请输入一个非负整数\n);scanf(%d,num);// 输入校验while(num0){printf(输入错误请输入一个非负整数\n);scanf(%d,num);}sumDigitSum(num);printf(%d的数字和为%d\n,num,sum);//n的k次方doublen,k;printf(请输入底数 n 和指数 k);scanf(%lf %lf,n,k);doubleresultPow(n,k);printf(%.2lf ^ %.2lf %.6lf\n,n,k,result);return0;}四.运行结果
http://www.zskr.cn/news/1402209.html

相关文章:

  • AutoJS自动化脚本实战:解析飞翔福袋源码与优化策略
  • 基于用户模型增强与隐因子分解的机票推荐冷启动解决方案
  • 通过简单示例感受Taotoken对OpenAI协议的原生兼容性
  • 空间QUBO:光学计算优化大规模二进制问题
  • 知行合一:从认知过载到行动系统的实践指南
  • STM32H743-实战ADC+DMA数据流在CubeMX中的高效配置
  • 在 Taotoken 平台观测 API 用量与成本的实际体验分享
  • 如何突破企业AI应用开发的技术瓶颈?Ruoyi-AI架构设计的深度解析
  • Axure RP中文语言包终极指南:三步实现专业原型设计工具完全汉化
  • 【UE4】GamePlay架构深度解析:从UObject到UWorld的宇宙构建
  • 张雪峰深度剖析|网络安全专业前景光明,现实一地鸡毛
  • 2026小程序分销开发:三种模式价格对比指南
  • 通过curl命令快速测试Taotoken不同模型的兼容性与响应效果
  • 基于滚动球盘核心驱动的双足机器人可变步态生成研究
  • 游戏开发中的物理模拟:如何用Unity Shader理解梯度、散度与流体效果
  • douyin-downloader:抖音无水印视频批量下载的终极解决方案
  • 从一次‘撞库’事件复盘:我是如何在Java后台用BCrypt守住密码最后防线的
  • Unlock Music终极指南:浏览器端音乐解锁工具深度解析
  • 基于SpringBoot的RESTfulAPI设计与实现
  • 企业合同审批、归档、履约为什么需要统一平台
  • 手把手教你用GDB和Objdump拆解Linux二进制炸弹(附7个阶段完整答案)
  • BetterJoy终极配置指南:5分钟让Switch手柄在PC上完美运行![特殊字符]
  • Postman便携版:三步告别API测试环境配置烦恼
  • 智能浏览器自动化的范式转移:视觉AI如何重塑测试边界
  • 如何快速实现飞书文档转Markdown:终极技术架构完整指南
  • 别再拿AI摸鱼了,普通人已经开始用它领工资了
  • PADS实战技巧:从原理图到PCB的协同设计全流程
  • 摩尔定律撞墙了,华为用一道“折叠”撕开了新路
  • 徐州黄金上门回收水太深?实测六大机构排名福昌夏第一 - 黄金上门回收
  • Nginx配置自动化管理:告别手动调整的高效解决方案