1.首先除了定义题目里的字符串之外,还要定义一个字符串数组,把0到9的引文都写上去。
2.然后输入字符串a
,定义一个整型变量x
,用来存储a
每一位的数字之和。
3.定义for循环,循环输入各位数。
4.用一个sprintf函数,把整型变量x
转换成字符数组z
。
5.最后用for循环循环输出s[z[i]-'0']
就行啦~
程序如下:
#include<bits/stdc++.h>
using namespace std;
string a,s[]={"zero","one","two","three","four","five","six","seven","eight","nine"};
char z[100];
int main(){
cin>>a;
int x=0;
for(int i=0;i<a.size();i++)
x+=a[i]-'0';
sprintf(z,"%d",x);
for(int i=0;i<strlen(z);i++)
cout<<s[(z[i]-'0')]<<' ';
}
有什么疑问可以在评论区中提出,我会尽力解答。