输入一个整数,输出每个数字对应的拼音。当整数为负数时,先输出fu字。十个数字对应的拼音如下:
0: ling
1: yi
2: er
3: san
4: si
5: wu
6: liu
7: qi
8: ba
9: jiu
输入格式:
输入在一行中给出一个整数,如:1234。
提示:整数包括负数、零和正数。
输出格式:
在一行中输出这个整数对应的拼音,每个数字的拼音之间用空格分开,行末没有最后的空格。如 yi er san si。
输入样例:
-600
输出样例:
fu liu ling ling
#include<iostream>
#include<algorithm>
#include<vector>
#include<math.h>
#include <iomanip>
#include<map>
#include<set>
#include<stack>
using namespace std;
int main()
{
string a[10];
a[0] = "ling";
a[1] = "yi";
a[2] = "er";
a[3] = "san";
a[4] = "si";
a[5] = "wu";
a[6] = "liu";
a[7] = "qi";
a[8] = "ba";
a[9] = "jiu";
int n;
int m[20];
cin >> n;
if (n < 0)
{
cout << "fu ";
n *= -1;
}
int num = n;
int cnt = 0;
if (n == 0)
cout << a[0];
while (num)
{
m[cnt] = num % 10;
num /= 10;
cnt++;
}
while (cnt)
{
cout << a[m[cnt - 1]];
if (cnt != 1)
cout << " ";
cnt--;
}
cout << endl;
return 0;
}
整数转拼音算法实现
本文介绍了一种将整数转换为其对应汉字拼音的算法。通过定义数字与拼音的映射,该算法能够处理正数、负数和零,将每个数字位上的数值转换为相应的汉字拼音,并在负数前添加“fu”字。文章提供了详细的C++代码实现,展示了如何遍历整数的每一位并输出其拼音。
801

被折叠的 条评论
为什么被折叠?



