码迷,mamicode.com
首页 > 其他好文 > 详细

PAT (Basic Level) Practise (中文)1002

时间:2016-07-14 19:06:26      阅读:134      评论:0      收藏:0      [点我收藏+]

标签:

1002. 写出这个数 (20)

时间限制
400 ms
内存限制
65536 kB
代码长度限制
8000 B
判题程序
Standard
作者
CHEN, Yue

读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。

输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10100

输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一个拼音数字后没有空格。

输入样例:
1234567890987654321123456789
输出样例:
yi san wu

提交代码

 

 

 1 #include<stdio.h>
 2 #include<string.h>
 3 #define N 10000
 4 
 5 void Pinyin(int n)
 6 {
 7     switch (n)
 8     {
 9         case 0: printf("ling");
10                 break;
11         case 1: printf("yi");
12                 break;
13         case 2: printf("er");
14                 break;
15         case 3: printf("san");
16                 break;
17         case 4: printf("si");
18                 break;
19         case 5: printf("wu");
20                 break;
21         case 6: printf("liu");
22                 break;
23         case 7: printf("qi");
24                 break;
25         case 8: printf("ba");
26                 break;
27         case 9: printf("jiu");
28                 break;
29     }
30     return;
31 }
32 int main()
33 {
34     char str[N];
35     int sum=0,i,j,len,num[1000];
36     scanf("%s",&str);
37     len=strlen(str);
38     for ( i=0;i<len;i++ ){
39         sum+=str[i]-0;
40     }
41     for ( i=0; ;i++ )
42     {
43         num[i]=sum%10;
44         if ( sum<10 )
45             break;
46         sum=sum/10;
47     }
48     for ( j=i; j>=0; j-- )
49     {
50         Pinyin(num[j]);
51         if ( j>0 )
52             printf(" ");
53     }
54     return 0;
55 }

 

PAT (Basic Level) Practise (中文)1002

标签:

原文地址:http://www.cnblogs.com/alxy/p/5671397.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!