PAT (Basic Level) Practise (中文)1002. 写出这个数 (20)(java实现)
2017-03-25 21:54
537 查看
1002. 写出这个数 (20)
时间限制400 ms
内存限制
65536 kB
代码长度限制
8000 B
判题程序
Standard
作者
CHEN, Yue
读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。
输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10100。
输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1空格,但一行中最后一个拼音数字后没有空格。
输入样例:
1234567890987654321123456789
输出样例:
yi san wu
package pat;
import java.util.Scanner;
/*
* 字符串拆分string.tocharArray()
* 字符类型转换为字符串String.valueOf
* 整型转换为字符串
*1.) String s = String.valueOf(i);
*2.) String s = Integer.toString(i);
*3.) String s = "" + i;
*字符串转换为整型
* int i = Integer.parseInt([String]); i = Integer.parseInt([String],[int radix]);
*2). int i = Integer.valueOf(my_str).intValue();
*字符--字符串--整型
*http://bbs.csdn.net/topics/240058667
*https://zhidao.baidu.com/question/412558633.html
* http://bbs.csdn.net/topics/310082307
*/
//网页提交时不能加注释 上边时我做题时遇到的问题和查询的方法
public class WriteThisNumber {
public static void main(String[] args)throws Exception{
Scanner cin = new Scanner(System.in);
String str = cin.next();
int sum=0;
char[] nums = str.toCharArray();
for(int i=0;i<str.length();i++){
sum+=Integer.parseInt(String.valueOf(nums[i]));
}
str=String.valueOf(sum);
char[] results=str.toCharArray();
str="";
for(int i =0;i<results.length;i++){
str+=change(Integer.parseInt(String.valueOf(results[i])));
if(i<results.length-1)
str+=" ";
}
System.out.println(str);
}
public static String change(int number){
switch(number){
case 1:
return "yi";
case 2:
return "er";
case 3:
return "san";
case 4:
return "si";
case 5:
return "wu";
case 6:
return "liu";
case 7:
return "qi";
case 8:
return "ba";
case 9:
return "jiu";
case 0:
return "ling";
default:
return "";
}
}
}
相关文章推荐
- PAT (Basic Level) Practise (中文)- 1002. 写出这个数 (20)
- PAT (Basic Level) Practise (中文)1002. 写出这个数 (20)
- PAT (Basic Level) Practise (中文)1002 写出这个数(20)
- PAT (Basic Level) Practise (中文)1002. 写出这个数 (20)
- PAT (Basic Level) Practise (中文)---1002 写出这个数 (20)
- PAT (Basic Level) Practise (中文)1002. 写出这个数 (20)
- PAT (Basic Level) Practise (中文)1002. 写出这个数 (20) C语言
- PAT (Basic Level) Practise (中文)1002.写出这个数
- PAT乙级真题及训练集 PAT (Basic Level) Practise (中文)1002. 写出这个数
- PAT (Basic Level) Practise:1002. 写出这个数
- PAT (Basic Level) 1002. 写出这个数 (20)
- PAT (Basic Level) Practise 1002. 写出这个数
- PAT(Basic Level) 1002.写出这个数 (20)
- PAT BASIC LEVEL 1002.写出这个数 (20)
- PAT Basic 1002. 写出这个数 (20)(C语言实现)
- PAT (Basic Level)1002. 写出这个数 (20)
- PAT(Basic Level) 1002. 写出这个数 (20)
- PAT 1002 写出这个数 (20) (Basic Level)
- 写出这个数 (20),PAT(Basic Level) Practise NO.1002
- PAT Basic Level 1002. 写出这个数 (20)