#include <stdio.h>
void swtich_p(int h) //将数字转化为汉字拼音
{
switch (h)
{
case 1:printf_s("yi"); break;
case 2:printf_s("er"); break;
case 3:printf_s("san"); break;
case 4:printf_s("si"); break;
case 5:printf_s("wu"); break;
case 6:printf_s("liu"); break;
case 7:printf_s("qi"); break;
case 8:printf_s("ba"); break;
case 9:printf_s("jiu"); break;
case 0:printf_s("ling"); break;
}
}
int main(void)
{
int m=0,num=0;
while ((m = getchar()) != '\n') //单独取出每一位数
if(m <= 57 && m >= 48) num += (m - 48); //滤掉非数字字符(这是后来加的加了也没用还是过不了),将数字字符的acill转化为数字,并相加
do
{
if (num / 100)
{
swtich_p(num / 100);
num -= 100 * (num / 100);
}
else if (num / 10)
{
swtich_p(num / 10);
num -= 10 * (num / 10);
}
else
{
swtich_p(num);
num /= 10;
}
}
while (num != 0 && printf_s(" ")); //短路运算字符间留“ ”
return 0;
}
来来回回改了几遍还是过不去