输入一个整数,输出每个数字对应的拼音。当整数为负数时,先输出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;
public class Main {
public static void main(String[] args) {
// 读入一个数字
Scanner input = new Scanner(System.in);
int num = input.nextInt();
input.close();
// 判断是否是负数,并控制打印形式
if (num < 0) {
System.out.print("fu" + " ");
// 负数要找到绝对值去读
int num_abs = Math.abs(num);
read(num_abs);
} else {
read(num);
}
}
/**
* @Title: read @Description: 读数字 @param n 设定文件 @return void 返回类型 @throws
*/
public static void read(int n) {
// 定义一个字符串数组,元素是从零到九的数字的拼音
String[] arr = { "ling", "yi", "er", "san", "si", "wu", "liu", "qi", "ba", "jiu" };
int number = n;
// 将数字转换为字符串
String str = number + "";
// 定义最终要打印的字符串
String print = "";
// 遍历字符串
for (int index = 0; index < str.length(); index++) {
// 从左往右取到每一个字符
char c = str.charAt(index);
// 用取到的字符减字符零,得到的 int 型数字就是数字本身
// 用数字本身作为下标获取拼音
int arr_index = c - '0';
// concat(String s) 方法,把指定的字符串连接到这个字符串的末尾
print = print.concat(arr[arr_index] + " ");
}
// trim() 方法,去掉字符串末尾的空格字符
System.out.println(print.trim());
}
}