L1-007 念数字
输入一个整数,输出每个数字对应的拼音。当整数为负数时,先输出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
import java.util.Scanner;
class Main{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
//1.读取-600
int num = sc.nextInt();
//2.如果是负数,首先输出fu
if(num < 0){
//fu后面的空格是一定需要的,因为题目说了,每个数字拼音与拼音之间用空格隔开
System.out.print("fu ");
}
//3.然后逐个分解600这几个数,并打印他们的拼音
//3.1逐个分解600,转换成String,首先int可以转换为String,其次String可以获取每一个字符
String str_num = String.valueOf(Math.abs(num));
String read_num= "";
String[] arr = {"ling", "yi", "er", "san", "si", "wu", "liu", "qi", "ba", "jiu"};
for(int i = 0;i < str_num.length();i++){
read_num += arr[str_num.charAt(i) - '0'];
//最后一个空格后面没有空格
if(i !=str_num.length() -1){
read_num += " ";
}
}
//3.2打印他们的拼音
System.out.println(read_num);
}
}