作者 CHEN, Yue
单位 浙江大学
代码长度限制 16 KB
时间限制 400 ms
内存限制 64 MB
问题描述:让我们用字母 B 来表示“百”、字母 S 表示“十”,用 12…n 来表示不为零的个位数字 n(<10),换个格式来输出任一个不超过 3 位的正整数。例如 234 应该被输出为 BBSSS1234,因为它有 2 个“百”、3 个“十”、以及个位的 4。
题解思路:分别解析百位、十位、个位的数字,用for循环控制输出次数即可。
完整源码:
import java.util.Scanner; /** * 1006 换个格式输出整数 (15 分) * * @author LiFeilin * @date 2021年05月21日 */ public class Test6 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int number = scanner.nextInt(); int a = (number / 100) % 10; //获取百位数字 for (int i = 0; i < a; i++) { System.out.print("B"); } int b = (number / 10) % 10; //获取十位数字 for (int j = 0; j < b; j++) { System.out.print("S"); } int c = number % 10; //获取各位数字 int m = 1; for (int n = 0; n < c; n++) { System.out.print(m); m++; } } }
提交结果: