NOI 1027 数字之和
2020.01.17 年前打卡OJ
时间限制 1000ms
空间限制 262144KB
题目描述
对于任意输入的整数,计算其各个数位上的数字之和。
输入:输入一个正整数N。
输出:输出N的各个位上的数字之和。
样例输入 1234
样例输出 10
数据范围限制 1<=N<2^31
题目分析
首先确定无法将各个数位上的数据逐个表示出来,那么只能以总和的形式表示最终结果。
为了得到各数位上数据的总和,可以从个位开始,将n进行求余数操作,得到个位上的数据,将其加到总和sum中。再将n/10,其目的是能让十位数据变为个位数据以便再次求余数。
代码如下:
#include<stdio.h>
int main()
{
int n;
scanf("%d",&n);
int sum=0;
for(;n>0;)
{
sum+=n%10;
n=n/10;
}
printf("%d",sum);
return 0;
}