输入一个整数,输出每个数字对应的拼音。当整数为负数时,先输出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
思路: 1.第一位进行特判,如果是负数就先进行输出
2.如果第一位是负数,就要在输出下一个字符串之前先打一个空格;如果不是负数就不用空格,直接输出就可以了!
3.while的条件是保证输入的字符是数字字符以及负号,否则运行会爆。
#include<stdio.h>
int main()
{
const char *num[11]={"ling","yi","er","san","si","wu","liu","qi","ba","jiu","shi"};
char temp;
int flag = 1;
temp = getchar();
while(temp=='-'||(temp>='0'&&temp<='9')){
if(temp == '-')
{
flag = 0;
printf("fu");
}
else{
if(flag==1){
flag = 0;
printf("%s",num[temp-'0']);
}
else{
printf(" %s",num[temp-'0']);
}
}
temp = getchar();
}
return 0;
}