写在前面
你好!欢迎来到我的博客,希望我的思路能够帮到你!
问题描述
从键盘接收用户输入的字符串, 对用户输入的每个字符串的处理是:将字符串内的每一个十进制数字字符置换成下列表格中右边所对应的一个字符串(所有其他字符不变),然后将转换的结果显示在屏幕上;并分别计算每个数字的置换次数。
十进制数字字符 → 置换成
0 → (Zero)
1 → (One)
2 → (Two)
3 → (Three)
4 → (Four)
5 → (Five)
6 → (Six)
7 → (Seven)
8 → (Eight)
9 → (Nine)
例如,若用户输入的字符串为
Page112-Line3,
则程序5的输出是:
Page(One) (One) (Two)-Line(Three),
数字0到9的置换次数分别是 0 2 1 1 0 0 0 0 0 0
输入形式
输入一行字符串,其中可包含字母、数字、空格或其他符号(英文)
输出形式
第一行为将字符串中的数字转换为表格中的内容后输出
第二行为数字0~9被转换的次数
样例输入
Page112-Line3
样例输出
Page(One)(One)(Two)-Line(Three)
0 2 1 1 0 0 0 0 0 0
解题思路
就是开一个长度为10的数组用于计数,然后在根据不同的字符返回不同的单词,最后输出,大家直接看代码吧。
AC代码
#include<iostream>
#include<string>
using namespace std;
int a[10];
string replace(char i)
{
switch(i)
{
case '0':
{
a[