PAT Basic Level 1002

AC代码

 1 #include <stdio.h>
 2 void PrintChn(int num)
 3 {
 4     int cnt = 0;
 5     int tempNum = num;
 6     while (tempNum>0)
 7     {
 8         tempNum = tempNum/10;
 9         cnt++;
10     }
11     int i;
12     int mask = 1;
13     for(i = cnt;i > 0;i--)
14     {
15         mask *= 10;
16     }
17     mask = mask/10;
18     while (mask != 0)
19     {
20         int temp = 0;
21         temp = num/mask;
22         num = num % mask;
23         mask = mask/10;
24         switch (temp)
25         {
26             case 0:printf("ling");
27             break;
28             case 1:printf("yi");
29             break;
30             case 2:printf("er");
31             break;
32             case 3:printf("san");
33             break;
34             case 4:printf("si");
35             break;
36             case 5:printf("wu");
37             break;
38             case 6:printf("liu");
39             break;
40             case 7:printf("qi");
41             break;
42             case 8:printf("ba");
43             break;
44             case 9:printf("jiu");
45             break;
46         }
47         if(mask>0)
48         {
49             printf(" ");
50         }
51     }
52 }
53 int main ()
54 {
55     char box[100]; //define "box"char array for input num;
56     scanf("%s",&box);
57     int temp = 0;
58     int i = 0;
59     while(box[i] != 0)
60     {
61         temp += (int)box[i] - ‘0‘;
62         i++;
63      }
64      PrintChn(temp);
65     return 0 ;
66
67  } 
时间: 2024-10-23 09:05:17

PAT Basic Level 1002的相关文章

PAT (Basic Level) 1002. 写出这个数 (20)

读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式:每个测试输入包含1个测试用例,即给出自然数n的值.这里保证n小于10100. 输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一个拼音数字后没有空格. 输入样例: 1234567890987654321123456789 输出样例: yi san wu 我的代码   #include<iostream> #include<string> using namespace

PAT (Basic Level) Practise (中文) 1005

1005. 继续(3n+1)猜想 (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 卡拉兹(Callatz)猜想已经在1001中给出了描述.在这个题目里,情况稍微有些复杂. 当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推过程中遇到的每一个数.例如对n=3进行验证的时候,我们需要计算3.5.8.4.2.1,则当我们对n=5.8.4.2进行验证的时候,就可以直接判定卡拉兹猜想的真伪,而不需要重

PAT (Basic Level) Practise (中文)1004. 成绩排名 (20)

读入n名学生的姓名.学号.成绩,分别输出成绩最高和成绩最低学生的姓名和学号. 输入格式:每个测试输入包含1个测试用例,格式为 第1行:正整数n 第2行:第1个学生的姓名 学号 成绩 第3行:第2个学生的姓名 学号 成绩 ... ... ... 第n+1行:第n个学生的姓名 学号 成绩 其中姓名和学号均为不超过10个字符的字符串,成绩为0到100之间的一个整数,这里保证在一组测试用例中没有两个学生的成绩是相同的. 输出格式:对每个测试用例输出2行,第1行是成绩最高学生的姓名和学号,第2行是成绩最低

PAT (Basic Level) Practise 1002. 写出这个数

1002. 写出这个数 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式:每个测试输入包含1个测试用例,即给出自然数n的值.这里保证n小于10100. 输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一个拼音数字后没有空格. 输入样例: 1234567890987654321123456789 输出样

PAT (Basic Level) Practise (中文)1002

1002. 写出这个数 (20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式:每个测试输入包含1个测试用例,即给出自然数n的值.这里保证n小于10100. 输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一个拼音数字后没有空格. 输入样例: 123456789098765432112345678

PAT (Basic Level) Practice (中文)1002

1002 写出这个数 (20 分) 读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式: 每个测试输入包含 1 个测试用例,即给出自然数 n 的值.这里保证 n 小于 10?100??. 输出格式: 在一行内输出 n 的各位数字之和的每一位,拼音数字间有 1 空格,但一行中最后一个拼音数字后没有空格. 输入样例: 1234567890987654321123456789 输出样例: yi san wu #include<stdio.h> #include<s

PAT (Basic Level) Practise:1002. 写出这个数

[题目链接] 读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式:每个测试输入包含1个测试用例,即给出自然数n的值.这里保证n小于10100. 输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一个拼音数字后没有空格. 输入样例: 1234567890987654321123456789 输出样例: yi san wu 提交代码:

PAT (Basic Level) Practice (中文) 1002 写出这个数

读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 1 #include<stdio.h> 2 int main(){ 3 char c; 4 int sumt=0,t[10],count,i; 5 scanf("%c",&c); 6 while(c!='\0'&&c!='\n'){ 7 sumt += (c-'0'); 8 scanf("%c",&c); 9 } 10 count = 0; 11 wh

PAT (Basic Level) Practise 1040 有几个PAT(DP)

1040. 有几个PAT(25) 时间限制 120 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CAO, Peng 字符串APPAPT中包含了两个单词“PAT”,其中第一个PAT是第2位(P),第4位(A),第6位(T):第二个PAT是第3位(P),第4位(A),第6位(T). 现给定字符串,问一共可以形成多少个PAT? 输入格式: 输入只有一行,包含一个字符串,长度不超过105,只包含P.A.T三种字母. 输出格式: 在一行中输出给定字符串中