问题描述
你的程序要读入一个整数,范围是[-100000,100000]。然后,用汉语拼音将这个整数的每一位输出出来。
如输入1234,则输出:
yi er san si
注意,每个字的拼音之间有一个空格,但是最后的字后面没有空格。当遇到负数时,在输出的开头加上“fu”,如-2341输出为:
fu er san si yi
输入格式:
一个整数,范围是[-100000,100000]。
输出格式:
表示这个整数的每一位数字的汉语拼音,每一位数字的拼音之间以空格分隔,末尾没有空格。
输入样例:
-30
输出样例:
fu san ling
时间限制:500ms内存限制:32000kb
用C语言实现代码如下:
#include <stdio.h>
#include <math.h>
#include <string.h>
int main()
{
int i,m,count,num1,num2;
int a[6];
char b[10][10]={"ling","yi","er","san","si","wu","liu","qi","ba","jiu","shi"};
char c[]="fu";
while(1)
{
scanf("%d",&num1);
if(num1>=-100000&&num1<=100000)
break;
}
if(num1<0)
{
printf("%s ",c);
num1=abs(num1);
}
num2=num1;
count=0;
while(num1!=0)
{
num1/=10;
count++;
}
i=count-1;
while(num2!=0)
{
m=num2%10;
a[i--]=m;
num2/=10;
}
for(i=0;i<count;i++)
printf("%s ",b[a[i]]);
printf("\b\n");
system("pause");
return 0;
}