1. 程式人生 > >5-2. 念數字

5-2. 念數字

輸入一個整數,輸出每個數字對應的拼音。當整數為負數時,先輸出“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<stdio.h>

int main()
{
	int a;
	scanf("%d",&a);
	
	if(a<0){
		printf("fu ");
		a=-a;
	}
	
	int mask=1;
	int t=a;
	while(t>9){
		t/=10;
		mask*=10;
	}
	
	do{
		int b=a/mask;
		switch(b){
			case 0:printf("ling");break;
			case 1:printf("yi");break;
			case 2:printf("er");break;
			case 3:printf("san");break;
			case 4:printf("si");break;
			case 5:printf("wu");break;
			case 6:printf("liu");break;
			case 7:printf("qi");break;
			case 8:printf("ba");break;
			case 9:printf("jiu");break;
		}
		if(mask>9)printf(" ");
		a%=mask;
		mask/=10;
	}while(mask>0);
	printf("\n");
	
	return 0;
}