PAT乙级:1006 换个格式输出整数 (15 分)
微信公众号请搜索:【Codeplus】
作者 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++;
}
}
}
提交结果: