1.Description:

2.Example:

Input:
12345
Output:

one five

3.solutions:

C Version:

 #include <stdio.h>
#include <string.h>
#include <stdlib.h> int main() {
char digits[] = {};
char NUMBERS[][] = {"zero", "one", "two", "three", "four", "five","six",
"seven", "eight", "nine", "ten"};
scanf("%s", digits);
int sum = ;
unsigned i;
for (i = ; digits != NULL && i < strlen(digits); ++i) {
sum += digits[i] - ; // '0'的Ascill码为48
}
char* output;
sprintf(output, "%d", sum);
unsigned j;
for (j = ; output[j] != '\0'; ++j) {
if (j != strlen(output) - )
printf("%s ", NUMBERS[output[j] - ]);
else
printf("%s", NUMBERS[output[j] - ]);
}
return ;
}

Note: 自己的电脑上调试无误,提交时运行错误!

C++ Version:

 #include <iostream>
using namespace std; int main() {
string digits;
string NUMBERS[] = {"zero", "one", "two", "three", "four", "five","six",
"seven", "eight", "nine", "ten"};
getline(cin, digits);
cout << digits << endl;
int sum = ;
for (int i = ; i < digits.size(); ++i) {
sum += int(digits[i]);
}
string output = to_string(sum);
for (int j = ; j < output.size(); ++j) {
if (j != output.size() - )
cout << NUMBERS[int(output[j])] << " ";
else
cout << NUMBERS[int(output[j])];
}
return ;
}

Java Version:

 import java.util.Scanner;

 /**
* Created by sheepcore on 2020-02-28
*/ public class P1005_Spell_It_Right {
public static void main(String[] args) {
String digits;
String NUMBERS[] = {"zero", "one", "two", "three", "four", "five","six",
"seven", "eight", "nine", "ten"};
Scanner scan = new Scanner(System.in);
digits = scan.nextLine();
int sum = 0;
for (int i = 0; i < digits.length(); ++i) {
sum += Integer.parseInt(digits.charAt(i) + "");
}
String output = sum + "";
int idx;
for (int j = 0; j < output.length(); ++j) {
if (j != output.length() - 1){
idx = Integer.parseInt(output.charAt(j) + "");
System.out.print(NUMBERS[idx] + " ");
}
else {
idx = Integer.parseInt(output.charAt(j) + "");
System.out.print(NUMBERS[idx]);
}
}
}
}

Python Version:

 """
created by sheepcore on 2020-2-28
""" if __name__ == "__main__":
digits = input()
NUMBERS = ['zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven',
'eight', 'nine', 'ten']
i = 0
for ch in digits:
i += eval(ch)
sum = str(i)
output = ""
for num in sum:
output += " " + str(NUMBERS[eval(num)])
print(output.lstrip(), end='')

4.summary:

掌握C、C++、Java、Python中字符串与数字之间的转换方法。

水滴石穿,笨鸟先飞!

最新文章

  1. SSH登录之后运行命令报错的解决办法-- Failed to connect to Mir: Failed to connect to server socket: No such file or directory
  2. DEV中dx:ASPxPopupControl 控件的使用(在窗口关闭或隐藏时,清楚文本框中的内容)
  3. Java基础-String、StringBuffer、StringBuilder
  4. LinuxC 文件与目录 打印文件操作错误信息
  5. 3-Highcharts曲线图之显示点值折线图
  6. hadoop-ha QJM 架构部署
  7. 关键字 extern
  8. mac 布置 git仓库服务器
  9. Spring mvc中@RequestMapping 6个基本用法整理
  10. 学习Easyui
  11. python中关于文件的读取和写入
  12. IDEA+TestNG
  13. Linux Kernel API
  14. eclipse jee使用
  15. c#导出ListView中的数据到Excel表格
  16. NFV/SDN驱动OSS转型
  17. django中数据库的相关操作
  18. Python 内部类
  19. UVa 1612 Guess (贪心+题意)
  20. valid 校验方式

热门文章

  1. (转) fuzzing XSS filter
  2. 用 F# 手写 TypeScript 转 C# 类型绑定生成器
  3. OpenCV2.4.13+Qt5.6.2配置方法
  4. selenium,xpath路径中引入变量
  5. Wireshark入门与进阶系列五之常见捕获过滤器
  6. ios---&gt;帧动画
  7. Web自动化测试项目(七)日志
  8. Docker(二):理解容器编排工具Kubernetes内部工作原理
  9. ROS机器人话题之自定义消息
  10. LeetCode 547. Friend Circles 朋友圈(C++/Java)