PAT甲級C語言.1002. 寫出這個數

#include<stdio.h>
int main()
{
	void pinyin(int);
	char a[1000],num_str[10]={0},*temp;
	int i,j,sum=0;
	printf("get number:");
	gets(a);
	for(i=0;a[i]!='\0';++i)
	{
		sum+=a[i]-'0';
	}
	printf("sum = %d\n",sum);
	sprintf(num_str,"%d",sum);/*sprintf()最常見的應用之一莫過於把整數打印到字符串中,如:
                                sprintf(s, "%d", 123);  //把整數123打印成一個字符串保存在s中
                                sprintf(s, "%8x", 4567);  //小寫16進制,寬度佔8個位置,右對齊*/
	temp=num_str;
	while(*temp!='\0')
	{
		pinyin(*temp);
		temp++;
		if(*temp!='\0')printf(" ");
		else printf("\n");
	}
	return 0;
}
void pinyin(int i)
{
	switch(i)
	{
		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");
	}
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章