首页 > 其他分享 >C语言----递归函数,计算一个非负整数的数字之和

C语言----递归函数,计算一个非负整数的数字之和

时间:2024-06-02 10:30:09浏览次数:14  
标签:DigitSum return 递归 非负 int ret C语言 ---- printf

int DigitSum(int n)
{
    if (n == 0)//如果 n 为 0,则停止递归,因为没有更多的数字可以添加。
    {
        return 0;
    }
    else
    {
        return n % 10 + DigitSum(n / 10);
    }
    /*
    假设输入123,第一次递归,return3 和DigitSum(12)
    DigitSum(12)  return   2和DigitSum(1)
    DigitSum()   return    1和DigitSum(0)
    DigitSum(0),因为n=0,所以递归结束
    */

}
int main()
{
    int n;
    scanf("%d", &n);
    if (n < 0)
    {
        printf("输入的数要大于0");
        return 0;
    }
    int ret = DigitSum(n);
    printf("%d", ret);
    return 0;
}

标签:DigitSum,return,递归,非负,int,ret,C语言,----,printf
From: https://blog.csdn.net/2301_80863610/article/details/139387934

相关文章

  • 面向切面编程AOP上集
    十面向切面编程AOP10.1AOP介绍在我们正常的业务代码中少不了事务模块安全模块等比如我们拿事务模块来举例如上图所示我们的Service中有了很多不属于业务的代码(开启事务,提交事务,回滚)这些非业务代码(交叉业务)与我们的业务代码耦合在一起会有两个问题交叉业务在很多......
  • vmicres.dll文件丢失导致程序无法运行问题
    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库,这时你可以下载这个vmicres.dll文件(挑选合适的版本文件)把它放......
  • vdsutil.dll文件丢失导致程序无法运行问题
    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库,这时你可以下载这个vdsutil.dll文件(挑选合适的版本文件)把它放......
  • Kubernetes——YAML文件编写
    目录一、创建Kubernetes对象YAML文件必备字段1.apiVersion2.kind3.metadata4.spec二、YAML格式基本规范1.结构表示2.键值对3.列表(数组)4.字典(映射)5.数据类型6.注释7.多文档支持8.复杂结构9.示例 三、YAML文件编写1.YAML文件的组成2.生成YAML文件框架2.1--d......
  • openeuler源码安装Postgresql 16
    准备条件OpenEuler(虚拟机):版本:22.03-LTS-SP3下载地址:https://www.openeuler.org/zh/download/PostgreSQL:版本:16.3源码包下载地址:https://www.postgresql.org/ftp/source/操作系统安装安装过程与centos基本一致,此处就省略了,安装的时候可以把需要的网络工具和开发工具包勾......
  • 《计算机网络微课堂》实验11 IP数据报的发送和转发流程
    下面我们来进行一个仿真实验,本仿真实验的内容为观察主机发送IP数据报的过程,以及路由器转发IP数据报的过程。我已经在软件中构建好了之前我们在理论课中所讲解的那幅网络拓扑,并且将需要配置的内容标注在了网络中各设备的旁边。例如主机需要配置IP地址、子网掩码以及指定默认......
  • 《计算机网络微课堂》实验10 构造超网(无分类编址)
    下面我们来进行一个仿真实验,本仿真实验的目的在于帮助大家加深对IP地址第三个历史阶段,也就是构造超网的理解。构造超网也称为路由聚合,它使用无分类编制的方法。‍首先我们介绍一下本仿真实验的具体内容,构造如图所示的网络拓扑。网络中包含4个网络,假设给每个网络分配1个地......
  • 《计算机网络微课堂》实验12 默认路由和特定主机路由
    下面我们来进行一个仿真实验,本仿真实验的内容是验证默认路由和特定主机路由的作用。我已经在软件中构建好了我们理论课程中所使用过的网络拓扑,并且在各个设备的旁边都标注了相关的配置信息,对于网络中的各个主机,我们需要给他们配置IP地址,以及相应的子网掩码,最后还要给他们指定默......
  • 《计算机网络微课堂》实验13 静态路由配置错误导致的路由环路问题
    下面我们来进行一个仿真实验,本仿真实验的目的在于验证静态路由配置错误所导致的路由环路问题。我已经在软件中构建好了我们理论课讲解时所用到的网络拓扑,并且给网络中的各设备都配置了相应的IP地址和地址掩码。对于网络中的各个主机,我还为他们指定了默认网关,对于网络中的各个......
  • [转]Debian 12 系统内安装 Docker 详细步骤
    转载来源:https://www.wonote.com/post/debian-12-xi-tong-nei-an-zhuang-docker-xiang-xi-bu-zou/Docker是一个开源的应用容器引擎,它让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,实现虚拟化,使应用程序的部署和运维更加简单、高效......