试题编号: | 201512-1 |
试题名称: | 数位之和 |
时间限制: | 1.0s |
内存限制: | 256.0MB |
问题描述: |
问题描述
给定一个十进制整数
n,输出
n的各位数字之和。
输入格式
输入一个整数
n。
输出格式
输出一个整数,表示答案。
样例输入
20151220
样例输出
13
样例说明
20151220的各位数字之和为2+0+1+5+1+2+2+0=13。
评测用例规模与约定
所有评测用例满足:0 ≤
n ≤ 1000000000。
|
#include <bits/stdc++.h>
using namespace std;
int main()
{
char input[11];
for(int i=0;i<11;i++)
input[i]='0';
cin>>input;
int output=0;
for(int i=0;i<11;i++)
{
if(input[i]-'0'<0)
input[i]='0';
output=output+(input[i]-'0');
}
cout<<output;
}
CCF的第一道题目一般比较简单,这题也是。出题者的原意肯定是想考察我们编程提取十进制数的各个数位。不过这道题目可以用一些“旁门左道”。
正如上面展示的那样,用字符数组保存输入,然后将各个数位与ASCII码的'0'的差值累加即可。