这道题的整体思路是先用str存储输入的数据
再将每一个数字相加起来得到要输出的数字ans(注意数据类型的转化)
接着将这个答案ans每一个数字都分开存储进数组a中
如果接着再根据str2中的位置和a中数组中的位置是对应的依次转化成英文
#include<iostream>
using namespace std;
string str,str2[10]{"zero","one","two","three","four","five","six","seven","eight","nine"};
int ans,a[1000];
int main()
{
cin >> str;
for (int i = 0; i <str.size(); i++)
{
ans += (str[i]-'0');//直接相等的话得到的是其的码
}
int j = 0;
while (ans)
{
a[j]=ans%10;
ans /= 10;
j++;
}
for (int i = j - 1; i >= 0; i--)
{
for (int k = 0; k <= 10; k++)
{
if (a[i]==k)
{
cout << str2[k] << " ";
}
}
}
return 0;
}