import java.util.Scanner; public class Main { public static void main(String[] args) { int max = 0; Scanner in = new Scanner(System.in); String line = in. 1 分 ; // read a whole line in String[] a = line. 1 分 ; // split the line according to space for ( 1 分 ) { // iterate every word in the line 1 分 ; // turn the whole word into upper case System.out.println(s); // print out the upper case word max = Integer.max(max, 1 分 ); // find the longest word } System.out.println(max); in.close(); } }
时间: 2024-02-10 18:16:36 浏览: 69
java代码-import java.util.Scanner;
这段代码存在一些未完成的部分,需要你填空,我将在每个空格后面标注"1 分",请你完成下列问题:
1. 第 4 行的代码应该如何修改,才能将输入的整行字符串读入变量 line 中?
答:使用 in.nextLine() 方法,即将第 4 行修改为:String line = in.nextLine();
2. 第 5 行的代码应该如何修改,才能将字符串 line 按照空格进行分割,并存储到字符串数组 a 中?
答:使用 String 类的 split 方法,将第 5 行修改为:String[] a = line.split(" ");
3. 在第 6 行的 for 循环中,应该如何设置循环条件,才能遍历数组 a 中的所有元素?
答:使用增强型 for 循环,将第 6 行修改为:for (String s : a) {
4. 第 7 行的代码应该如何修改,才能将变量 s 转换为大写字母,并存储到变量 s 中?
答:使用 String 类的 toUpperCase 方法,将第 7 行修改为:s = s.toUpperCase();
5. 第 8 行的代码应该如何修改,才能将变量 s 打印出来?
答:直接使用 System.out.println(s); 即可。
6. 在第 9 行的代码中,应该如何修改,才能找到数组 a 中的最长字符串,并将其长度存储到变量 max 中?
答:使用 Math 类的 max 方法,将第 9 行修改为:max = Math.max(max, s.length());
最终完成的代码应该是这样的:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
int max = 0;
Scanner in = new Scanner(System.in);
String line = in.nextLine(); // read a whole line in
String[] a = line.split(" "); // split the line according to space
for (String s : a) { // iterate every word in the line
s = s.toUpperCase(); // turn the whole word into upper case
System.out.println(s); // print out the upper case word
max = Math.max(max, s.length()); // find the longest word
}
System.out.println(max);
in.close();
}
}
```
阅读全文