每日小练
题目描述
给定一个非负整数 NN,你的任务是计算 NN 的所有数字的总和,并以英语输出总和的每个数字。
输入格式
共一行,包含一个整数 NN,整数 NN 可能会出现前导0,比如:00123,对应的整数是123。
输出格式
共一行,用英语输出总和的每个数字,单词之间用空格隔开。
样例
输入数据 1
12345
输出数据 1
one five
数据范围
0 ≤ N≤ 10^{100}0≤N≤10
100
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
string s;
cin>>s;
long long sum=0;
long long m=s.size();
for(int i=0;i<m;i++)
{
int t=s[i]-'0';
sum+=t;
}
string str=to_string(sum);//将数字转为字符
for(int i=0;i<str.size();i++)
{
switch(str[i])
{
case '0':cout<<"zero"<<" ";
break;
case '1':cout<<"one"<<" ";
break;
case '2':cout<<"two"<<" ";
break;
case '3':cout<<"three"<<" ";
break;
case '4':cout<<"four"<<" ";
break;
case '5':cout<<"five"<<" ";
break;
case '6':cout<<"six"<<" ";
break;
case '7':cout<<"seven"<<" ";
break;
case '8':cout<<"eight"<<" ";
break;
case '9':cout<<"nine"<<" ";
break;
}
}
return 0;
}