首页 > 试题广场 >

数位之和

[编程题]数位之和
  • 热度指数:30074 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
\hspace{15pt}给定一个整数 n\left(-10^{9} \leqq n \leqq 10^9\right),请计算其所有数位之和。若 n 为负数,请先取其绝对值。

输入描述:
\hspace{15pt}在一行中输入一个整数 n,满足 -10^{9} \leqq n \leqq 10^9


输出描述:
\hspace{15pt}输出一个整数,表示 n 的所有数位之和。
示例1

输入

12

输出

3

说明

将正整数 12 的各位相加,1+2=3
示例2

输入

-305

输出

8

说明

取绝对值后 305 的各位相加,3+0+5=8
n = abs(int(input()))
#if n<=10**9:
    n = str(n)
    s = 0
    for i in n:
        s+=int(i)
    print(s)
有用例超出取数范围
发表于 2025-12-17 23:56:16 回复(0)
n = input()
s = 0
for i in n:
    if i.isdigit():  # 仅处理数字字符
        s += int(i)
print(s)

发表于 2025-11-23 20:44:15 回复(0)
print(sum(map(int,list(str(abs(int(input())))))))

Python 一行
发表于 2025-11-19 15:42:53 回复(0)
n = int(input())
n = str(abs(n))
t = 0
for i in n:
    t += int(i)
print(t)

发表于 2025-11-10 21:53:53 回复(0)
n=abs(int(input()))
p=n<=10**9
print(sum(int(i) for i in f'{n}' if p else'超出范围'))

# 此题提交后报错,提示的输入数值已超10的9次方的范围,答案未将描述中n的范围考虑进去

发表于 2025-10-30 11:23:47 回复(0)
a=int(input())
b=abs(a)
sum=0
while b >0 :
    sum+=b%10
    b//=10
print(sum)
发表于 2025-09-23 16:05:44 回复(0)
n = input()

sum = 0

for i in n:
    sum += int(i)

print(sum)
发表于 2025-07-14 01:51:34 回复(0)
print(sum([int(i) for i in input().strip('-')]))
发表于 2025-07-10 16:04:41 回复(0)
n = input().lstrip('-')
c = 0
for i in n:
    c += int(i)
print(c)
怎么没人看负号

发表于 2025-07-07 16:48:34 回复(1)
a = list(map(int,input()))
print(sum(a))

编辑于 2024-02-05 10:00:46 回复(0)
n=input()
sum=0
for i in n:
    sum+=int(i)

print(sum)
发表于 2023-04-18 10:56:28 回复(0)