C语言第二十八弹--输入一个非负整数,返回组成它的数字之和

news/2024/7/7 23:04:43

C语言求输入一个非负整数,返回组成它的数字之和

方法一、递归法

思路:设计一个初始条件,通过递归获取非负整数的个位,不断接近递归条件即可。

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int DigitSum(int n)
{
	int tmp = 0;
	if (n > 9)
	{
		tmp = n % 10;//获取每次的个位
		return tmp + DigitSum(n / 10);//和是每次个位相加
	}
	else if(n  == 0 )//是初始条件也是结束条件,使用n == 0 是因为递归中使用的是n / 10
	{
		return 0;
	}
}

int main()
{
	int  n = 0;
	scanf("%d",&n);
	int ret = DigitSum(n);
	printf("%d",ret);
	return 0;
}

非递归法

思路:通过循环设计好结束条件不断获得个位,并使用一个临时值接收。最后返回临时值即可。

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int DigitSum(int n)
{
	int tmp = 0;
	while (n)//1927 172 17 
	{
		//获取个位 后面获取个位直接+=即可
		tmp += n % 10;
		n /= 10;
	}
	return tmp;
}

int main()
{
	int  n = 0;
	scanf("%d",&n);
	int ret = DigitSum(n);
	printf("%d",ret);
	return 0;
}

http://lihuaxi.xjx100.cn/news/1827089.html

相关文章

基于51单片机超声波测距测液位及报警设计

**单片机设计介绍&#xff0c; 基于51单片机超声波测距测液位及报警设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于51单片机的超声波测距测液位及报警系统是一种用于测量储液罐或水箱中液位高度并进行液位监测和报警的设…

当内容创作进入 AGI 时代,你也可以成为「神笔马良」

我神笔马良的童话故事我们或多或少都听过&#xff0c;一支神笔在手&#xff0c;想画什么就能画出什么&#xff0c;栩栩如生。创造者的理解力、想象力和创作力都能通过这支神笔释放。 近一年&#xff0c;随着 AIGC 内容生产工具的快速出圈&#xff0c;有人把 Stable Diffusion、…

HarmonyOS应用开发实战—登录页面【ArkTS】

文章目录 一.HarmonyOS应用开发1.1HarmonyOS 详解1.2 ArkTS详解 二.HarmonyOS应用开发实战—登录页面【ArkTS】2.1 效果图2.2 ArkTS页面源码2.3 代码解析2.4 心得 一.HarmonyOS应用开发 1.1HarmonyOS 详解 HarmonyOS&#xff08;鸿蒙操作系统&#xff09;是华为公司推出的一种…

NPU、CPU、GPU算力及算力计算方式

NVIDIA在9月20日发布的NVIDIA DRIVE Thor 新一代集中式车载计算平台&#xff0c;可在单个安全、可靠的系统上运行高级驾驶员辅助应用和车载信息娱乐应用。提供 2000 万亿次浮点运算性能&#xff08;2000 万亿次8位浮点运算&#xff09;。NVIDIA当代产品是Orin&#xff0c;算力是…

LeetCode93. Restore IP Addresses

文章目录 一、题目二、题解 一、题目 A valid IP address consists of exactly four integers separated by single dots. Each integer is between 0 and 255 (inclusive) and cannot have leading zeros. For example, “0.1.2.201” and “192.168.1.1” are valid IP add…

让工作效率提升10倍:十大AIGC工具评测【建议收藏】

AI技术的普及已经在近年来不断增长。这种技术已经改变了我们与电脑的互动方式&#xff0c;让我们能够更高效、更自然地完成任务。本文将展示10个基于ChatGPT、GPT-3.5和 GPT-4.0 AI模型构建的最强大的资源&#xff0c;使您更容易充分利用它们的潜力。因此&#xff0c;如果您想利…

ubuntu22.04 arrch64版在线安装java环境

脚本 #安装java#!/bin/bashif type -p java; thenecho "Java has been installed."else#2.Installed Java , must install wgetwget -c https://repo.huaweicloud.com/java/jdk/8u151-b12/jdk-8u151-linux-arm64-vfp-hflt.tar.gz;tar -zxvf ./jdk-8u151-linux-arm6…

麒麟KYSEC使用方法05-命令设置密码强度

原文链接&#xff1a;麒麟KYSEC使用方法05-命令设置密码强度 hello&#xff0c;大家好啊&#xff0c;今天给大家带来麒麟KYLINOS的kysec使用方法系列文章第五篇内容----使用命令设置密码强度&#xff0c;密码强度策略有两个文件需要修改&#xff0c;pwquality.conf/login.defs&…