用递归求各位数字之和 C++实现

2023-10-31

输入一个数字,求其个十百千万…等各数字之和

(要求:编写递归函数)

输入:12345
输出:15

适用于初学者理解递归函数

#include <iostream>

using namespace std;

int add_num(int n);

int main() {
    int n;
    cout << "input number n" << endl;
    cin >> n;
    cout << add_num(n);
    return 0;
}

int add_num(int n) {
    if (n < 10)return n;
    else return add_num(n / 10) + n % 10;
}

思路总结:

  1. 要想求各个数位数字之和,
    必先分解问题为 “最后一位的数字” + “除最后一位的其余数字之和”
  2. 递归到最基本的情况:数字只有个位,那么此时直接返回该数字。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

用递归求各位数字之和 C++实现 的相关文章

  • 检测到 NuGet 包的版本冲突

    我正在开发 ASP Net core 2 1 Web 应用程序项目 我的解决方案中有 1 个项目和 3 个其他库 它是高级架构 数据访问层 DAL 业务层 BL 公共层 CL 所以我需要添加引用来连接一些库和项目 我已经添加了CL参考我的项
  • 将处理后的图形绘制到另一个图形中

    我想将一个经过处理的图形绘制到另一个图形中 I have two graphics var gHead Graphics FromImage h var gBackground Graphics FromImage b Transform
  • MEX 文件中的断言导致 Matlab 崩溃

    我正在使用mxAssert 宏定义为matrix h在我的 C 代码中 mex 可以完美编译 当我调用的 mex 代码中违反断言时 该断言不会导致我的程序崩溃 而是导致 Matlab 本身崩溃 我错过了什么吗 这是有意的行为吗 当我查看 M
  • Qt - 无法让 lambda 工作[重复]

    这个问题在这里已经有答案了 我有以下功能 我想在其中修剪我的std set
  • 添加对共享类的多个 WCF 服务的服务引用

    我正在尝试将我的 WCF Web 服务拆分为几个服务 而不是一个巨大的服务 但是 Visual Studio Silverlight 客户端 复制了两个服务共享的公共类 这是一个简单的例子来说明我的问题 在此示例中 有两个服务 两者都返回类
  • 在 C++ 中分割大文件

    我正在尝试编写一个程序 该程序接受一个大文件 任何类型 并将其分成许多较小的 块 我想我已经有了基本的想法 但由于某种原因我无法创建超过 12 kb 的块大小 我知道谷歌等上有一些解决方案 但我更感兴趣的是了解这个限制的根源是什么 然后实际
  • 在 OpenCL 中将函数作为参数传递

    是否可以在 OpenCL 1 2 中将函数指针传递给内核 我知道可以用C实现 但不知道如何在OpenCL的C中实现 编辑 我想做这篇文章中描述的同样的事情 在 C 中如何将函数作为参数传递 https stackoverflow com q
  • 捕获 foreach 条件中抛出的异常

    我有一个foreach在 foreach 本身的条件下循环期间中断的循环 有没有办法try catch抛出异常然后继续循环的项 这将运行几次 直到异常发生然后结束 try foreach b in bees exception is in
  • 通信对象 System.ServiceModel.Channels.ServiceChannel 不能用于通信

    通信对象System ServiceModel Channels ServiceChannel 无法用于通信 因为它处于故障状态 这个错误到底是什么意思 我该如何解决它 您收到此错误是因为您让服务器端发生 NET 异常 并且您没有捕获并处理
  • 在 C++11 中省略返回类型

    我最近发现自己在 C 11 模式下的 gcc 4 5 中使用了以下宏 define RETURN x gt decltype x return x 并编写这样的函数 template
  • 有什么工具可以说明每种方法运行需要多长时间?

    我的程序的某些部分速度很慢 我想知道是否有我可以使用的工具 例如它可以告诉我可以运行 methodA 花了 100ms 等等 或者类似的有用信息 如果您使用的是 Visual Studio Team System 性能工具 中有一个内置分析
  • 在 C# 中将位从 ulong 复制到 long

    所以看来 NET 性能计数器类型 http msdn microsoft com en us library system diagnostics performancecounter aspx有一个恼人的问题 它暴露了long对于计数器
  • 为什么 std::allocator 在 C++17 中丢失成员类型/函数?

    一边看着std 分配器 http en cppreference com w cpp memory allocator 我看到成员 value type pointer const pointer reference const refer
  • 两组点之间的最佳匹配

    I ve got two lists of points let s call them L1 P1 x1 y1 Pn xn yn and L2 P 1 x 1 y 1 P n x n y n 我的任务是找到它们点之间的最佳匹配 以最小化它
  • C# 编译器如何决定发出可重定向的程序集引用?

    NET Compact Framework 引入了可重定向程序集引用 现在用于支持可移植类库 基本上 编译器会发出以下 MSIL assembly extern retargetable mscorlib publickeytoken 7C
  • std::bind 重载解析

    下面的代码工作正常 include
  • UWP 无法在两个应用程序之间创建本地主机连接

    我正在尝试在两个 UWP 应用程序之间设置 TCP 连接 当服务器和客户端在同一个应用程序中运行时 它可以正常工作 但是 当我将服务器部分移动到一个应用程序并将客户端部分移动到另一个应用程序时 ConnectAsync 会引发异常 服务器未
  • 通过等待任务或访问其 Exception 属性都没有观察到任务的异常

    这些是我的任务 我应该如何修改它们以防止出现此错误 我检查了其他类似的线程 但我正在使用等待并继续 那么这个错误是怎么发生的呢 通过等待任务或访问其 Exception 属性都没有观察到任务的异常 结果 未观察到的异常被终结器线程重新抛出
  • 过期时自动重新填充缓存

    我当前缓存方法调用的结果 缓存代码遵循标准模式 如果存在 则使用缓存中的项目 否则计算结果 在返回之前将其缓存以供将来调用 我想保护客户端代码免受缓存未命中的影响 例如 当项目过期时 我正在考虑生成一个线程来等待缓存对象的生命周期 然后运行
  • 如何确定母版页中正在显示哪个子页?

    我正在母版页上编写代码 我需要知道正在显示哪个子 内容 页面 我怎样才能以编程方式做到这一点 我用这个 string pageName this ContentPlaceHolder1 Page GetType FullName 它以 AS

随机推荐

  • 通过手机号定位归属地

    工作中 很多地方 都存在只知道手机号 同时也想知道这个手机号的归属地的情况 本功能 即可实现这个要求 同时 可在此基础上做调整 实现其它功能 如制作一个属于自己的手机号段归属库等 实现思路 通过网上提供的免费查询接口 取得返回信息 并对返回
  • osg fbo(三),将颜色缓冲区图片通过shader变绿

    这个其实很简单 一 写顶点着色器和片元着色器 static const char vertexShader void main void n n gl Position ftransform n n static const char ps
  • 看完这篇文章保你面试稳操胜券——React篇

    进大厂收藏这一系列就够了 全方位搜集总结 为大家归纳出这篇面试宝典 面试途中祝你一臂之力 共分为四个系列 本 篇 为 看 完 这 篇 文 章 保 你 面 试 稳 操 胜 券 第 五 篇
  • 邮票孔相关

    1 PCB厂子把这个叫做半孔焊盘 加工起来要多收费的 首先内孔金属化的工艺要求比普通焊盘或过孔要高 负责的厂子会做切片抽检 其次是板子切割 别的板子边缘可能用冲床或者V割来加工 速度很快 这种我不知道用什么刀具 但精度控制很高 切边的时候如
  • 多开虚拟机就卡内存cpu都够_CPU过剩是真是假?告诉你造成电脑卡顿的原因

    最近一些朋友说自己的电脑经常卡顿 即使升级了CPU啥的还是无法完全解决 还有的即使用了大家推荐的固态硬盘 使用时间一长也会卡顿 原因究竟是什么呢 尽管都说如今的电脑CPU性能过剩 但也得看你是拿来干什么的 如果是日常上网聊天的话 即使是几百
  • 阿里云 k8s 专有版集群修改节点 最大pod 数

    阿里云 k8s 专有版集群修改节点 最大pod 数 默认64 在节点上编辑此文件 vi etc systemd system kubelet service d 10 kubeadm conf 修改如下这行参数中的 max pods 例如将
  • 递归算法学习——全排列

    目录 编辑 一 问题描述 1 例子 题目接口 二 问题分析和解决 1 问题分析 2 解题代码 一 问题描述 首先我们得来先看看全排列的问题描述 全排列问题的问题描述如下 给定一个不含重复数字的数组 nums 返回其 所有可能的全排列 你可以
  • 统计java类出现的次数并写出到文件

    package File方法 import java io public class FileCount int javaNum 0 int classNum 0 int rowNum 0 public void count String
  • C语言:整数的存储方式

    整数的存储方式 char类型在存储时是按照ASCII码值进行存储 存储方式与整型一致 有符号数与无符号数 char 一个字节 signed char unsigned char int 四个字节 signed int unsigned in
  • CentOS7.9安装kafka-3.2.0和window10 下安装kafka-3.2.0

    目录 1 下载软件包 2 配置环境 3 安装zookeeper 4 安装kafka 5 测试功能 6 window 10下安装 1 下载软件包 首先下载zookeeper 地址 Apache ZooKeeperhttps zookeeper
  • ubuntu下在远程登录的主机上广播信息

    要在远程登录的主机上广播信息 可以使用以下几种方法 1 使用wall命令 wall命令可以将一条消息发送给所有登录到主机上的用户 在终端中输入以下命令来广播消息 wall Your message here 将 Your message h
  • Dynamics CRM环境还原

    Dynamics CRM 组织还原 一 还原数据库 二 导入组织 一 还原数据库 备份好 bat文件 切记 如果在同一台服务器上还原一个数据库 一定要修改目标数据库的名字 默认还原的名字会和原来的备份的数据库名字一样 二 导入组织 把姓名的
  • UGUI防止点击穿透

    if IsPointerOverGameObject Input mousePosition public static bool IsPointerOverGameObject Vector2 screenPosition 实例化点击事件
  • python实现非正态分布转正态分布(BoxCox转换)

    功能 将一维非正态分布数据转化为正态分布 输入 xlsx文件含有 患者密度 人 10万人 一列 输出 将 患者密度 人 10万人 一列转换为正态分布 并输出 实现代码 import pandas as pd import numpy as
  • DeeplabV3+网络结构搭建

    整体结构图 超详细结构图 Mobilenetv2主干 主干网络搭建 import math import os import torch import torch nn as nn import torch utils model zoo
  • 测试日常工作中需要具备哪些知识和能力,在需求评审时需要考虑哪些方面,在技术方面评审时需要考虑哪些方面,从什么方面进行设计测试用例

    前几天同事分享了一波作为测试需要具备哪些能力 测试用例需要从哪些方面进行设计 我把他分享的内容拷贝了一波 作为以后在测试过程中的参考 首先需求评审 技术方案评审 测试用例评审三者的关系 一开始 我每次设计测试用例都是从需求着手 去用测试用例
  • SQL在Excel中的应用方法

    iamlaosong文 Excel中使用SQL的主要目的是连接数据库 或Excel工作表 导入数据或者对这些数据进行统计汇总 要达到这个目的 需要好好学习SQL语句的使用 本文主要说明在Excel中如何使用SQL 至于SQL语句本身就不多作
  • 简单上手element-ui,三分钟学会按需导入~

    前言 element ui是由 饿了吗 团队开发的一个基于Vue框架的组件库 它提供了很多方便的api接口 可以快速的开发通用的页面 呸 讲这些没用的东西干嘛 下面我们就简单的讲讲 怎么快速的上手使用 ps 由于现在vue3已经成为新版本趋
  • 【大模型】长度 32K 上下文的 ChatGLM2-6B-32K 来了,开源可商用

    大模型 长度 32K 上下文的 ChatGLM2 6B 32K 来了 开源可商用 简介 ChatGLM2 6B 32K ChatGLM2 6B 32K 新特性 环境配置 环境搭建 安装依赖 代码及模型权重拉取 拉取 ChatGLM2 6B
  • 用递归求各位数字之和 C++实现

    输入一个数字 求其个十百千万 等各数字之和 要求 编写递归函数 输入 12345 输出 15 适用于初学者理解递归函数 include