✅创作者:陈书予
🎉个人主页:陈书予的个人主页
🍁陈书予的个人社区,欢迎你的加入: 陈书予的社区
🌟专栏地址: Java华为OD机试真题(2022&2023)
文章目录
- 1. 题目描述
- 2. 输入描述
- 3. 输出描述
- 4. Java算法源码
- 5. 测试
- 6.解题思路
1. 题目描述
输入一个字符串,请按长度为8拆分每个输入字符串并进行输出,长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。
2. 输入描述
连续输入字符串(每个字符串长度小于等于100
3. 输出描述
依次输出所有分割后的长度为8的新字符串。
4. Java算法源码
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);String input = "";while (sc.hasNextLine()) {String s = sc.nextLine();if (s.isEmpty()) {break;}input += s;}splitAndPrint(input);}private static void splitAndPrint(String input) {int length = input.length();int i = 0;while (i < length) {if (i + 8 <= length) {System.out.println(input.substring(i, i + 8));i += 8;} else {String substring = input.substring(i);int remainingLength = 8 - substring.length();for (int j = 0; j < remainingLength; j++) {substring += "0";}System.out.println(substring);break;}}}
}
5. 测试
示例输入 | 示例输出 |
---|---|
csy huawei od | 1.csy huaw 2.ei od 00 |
csy111112 | 1. csy11111 2. 20000000 |
6.解题思路
- 创建一个空字符串
input
来存储连续输入的字符串。 - 使用
Scanner
读取连续输入的字符串,并将它们逐个追加到input
中,直到遇到空字符串或输入结束。 - 调用
splitAndPrint
方法对input
进行处理。 - 在
splitAndPrint
方法中,使用循环遍历输入字符串,每次迭代取出长度为8的子字符串并进行输出。 - 如果子字符串长度不足8,在末尾补充数字0,直到长度达到8。
- 循环结束后,所有分割后的长度为8的新字符串都已输出。