题目描述
给出一个正整数 N(N<=9999),求 1,2,3,…….N 这一数列各个数位上的数字之和。
例如:N=12 时,这 12 个数是:1、2、3、4、5、6、7、8、9、10、11、12。 则这 12 个数的数字之和为:S=1+2+3+4+5+6+7+8+9+1+0+1+1+1+2=51
当 N=30 时,S=168。
输入
一行,一个正整数 N
输出
一行,一个整数 S,表示 1 到 N 所有整数的个位数之和
样例数据
输入
12
输出
51
代码
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,sum=0;//sum计数
cin>>n;
for(int i=1;i<=n;i++)//控制范围
{
int ii=i;
while(ii)//把各个数位上的数相加
{
sum+=ii%10;
ii/=10;
}
}
cout<<sum;
return 0;
}