java 相关问题,编程题,如下,这是面试题!!有谁会写得出?
发布网友
发布时间:2022-05-17 17:36
我来回答
共4个回答
热心网友
时间:2023-10-31 17:53
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class F {
public static final int LENGTH = 12;
public static void main(String[] args) {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
try {
System.out.println("请输入第一串字符");
String first = reader.readLine();
System.out.println("请输入第二串字符");
String second = reader.readLine();
System.out.println("请输入个数");
int num = Integer.valueOf(reader.readLine());
String tempHead = first + second;
int xLength = LENGTH - tempHead.length();
for (int i = 1; i <= num; i++) {
String temp = Integer.toString(i);
while (temp.length() < xLength) {
temp = "0" + temp;
}
System.out.println(tempHead + temp);
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
没有对输入的正确性校验,自己加下吧。
热心网友
时间:2023-10-31 17:53
接收完输入,先把两次输入的字符串拼接,然后计算长度,看需要补多少位。
补的就比较简单了,有两种情况
1、比如需要补2位,但你要生成1000个字符串,这时候用数字补就不够了,需要用字符,从a开始排,像拍车牌号一样。
2、比如需要补10位,但只让你生成10个字符串,这时候直接数字从尾端开始补就行。
这个过程每次都要判断一下,避免和输入的字符串有重复。
总体来讲这个题就是看上去复杂,实际比较简单
热心网友
时间:2023-10-31 17:54
public static void main(String[] args) {
String a="abc",b="def",d=a+b;
int c=100;
int e=12-d.length();
for(int f=0;f<e;f++){
d+="0";
}
for (int i=0;i<c;i++){
String g=d.substring(0,12-(i+"").length());
System.out.println(g+i);
}
}
热心网友
时间:2023-10-31 17:54
你这个问题不全面,呢如果两次输入的字符正好是12个字符,或超出12个字符你想怎么处理?还有如果你输入的数字是1000,而我的字符合并后可能是11,呢你的数字1000合并后也超出了12呢你想怎么处理!