import java.util.Scanner;
/**
* 1. 键盘录入一个大于1小于1000的正整数,将该整数转换成中文在控制台输出
* 2. 除非输入数字不在规定的范围,否则可以一直进行输入转换
小于10,数字后不需要带单位
大于9小于100,数字后需要带单位”十”
大于99小于1000,数字后需要带单位”百”
数字转换成中文样式如下:
5 五
15 一十五
115 一百一十五
*/
public class Prictice7 {
public static void main(String[] args) {
String[] s1 = {"零","一","二","三","四","五","六","七","八","九"};
String[] s2 = {"十","百"};
Scanner sc = new Scanner(System.in);
while(true) {
System.out.println("请录入一个大于1小于1000的正整数:");
int num = sc.nextInt();
if(num < 1 || num > 1000) {
System.out.println("您的输入不合法! 系统结束");
System.exit(0);
}
if(num < 10) {
System.out.println(s1[num]);
}
if(num > 9 && num < 100) {
int s = num/10;
int g = num%10;
System.out.println(s1[s]+s2[0]+s1[g]);
}
if(num > 99 && num < 1000) {
int b = num/100;
// 注: 十位,要除以10,再模10
int s = num/10%10;
int g = num%10;
// 判断如果是整百数,直接输入 ..整
if(s==0 && g==0) {
System.out.println(s1[b]+s2[1]+"整");
} else {
System.out.println(s1[b]+s2[1]+s1[s]+s2[0]+s1[g]);
}
}
}
}
}
|