题目链接
《算法笔记》的参考代码思路很清楚,也很简单,作者在这道题的注意点里面提到了sprintf()函数,以下是用sprintf()函数解题的很短小的代码:
#include <cstdio>
#include <cstring>
int main(){
char num[110],ans[110];
scanf("%s",num);
int sum=0;
for (int i=0; i<strlen(num); i++) sum+=num[i]-48;
char str[][10]={"zero","one","two","three","four","five","six","seven","eight","nine"};
sprintf(ans,"%d",sum);
printf("%s",str[ans[0]-48]);
for (int i=1; i<strlen(ans); i++) printf(" %s",str[ans[i]-48]);
}
没什么难度,《算法笔记》上面一般连续的几道题都是用同样的套路,这道题的前面几道题也可以用sprintf()或者sscanf()来写。