每日一题2

acwing1477题:拼写正确

给定一个非负整数 N,你的任务是计算 N 的所有数字的总和,并以英语输出总和的每个数字。

输入格式
共一行,包含一个整数 N。

输出格式
共一行,用英语输出总和的每个数字,单词之间用空格隔开。

数据范围
0≤N≤10^100
输入样例:
12345
输出样例:
one five

#include 
using namespace std;

int main(void)
{
     
    string str;
    int sum=0;
    cin>>str;
    
    for(int i=0;i<str.size();i++) sum+=str[i]-'0';
    
    string s=to_string(sum);
    
    string word[10]={
     "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"};
    //等价于char word[10][10] = {"zero", "one", "two", "three", "four","five", "six", "seven", "eight", "nine"};
    
    for(int i=0;i<s.size();i++) cout<<word[s[i]-'0']<<' ';
}

如有问题,欢迎在评论区提问

你可能感兴趣的:(acwing,算法,c++)