用Java编写。输入N个英文字母当输入0表示结束,将大写字母存入数组a小写字母存入b。分别统计出各有多少个字母。
时间: 2024-09-13 20:09:45 浏览: 78
java 字母数字分离
要用Java编写这样一个程序,你需要遵循以下步骤:
1. 创建两个字符数组`a`和`b`用于存储大写字母和小写字母。
2. 创建一个循环结构来接收用户输入,直到输入为0为止。
3. 在循环中,检查每个输入的字符。
4. 如果字符是大写字母,则将其添加到数组`a`中。
5. 如果字符是小写字母,则将其添加到数组`b`中。
6. 循环结束后,统计并输出数组`a`和`b`中字母的数量。
下面是一个简单的实现示例:
```java
import java.util.Scanner;
public class LetterCounter {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int countA = 0; // 大写字母计数器
int countB = 0; // 小写字母计数器
char[] a = new char[26]; // 存储大写字母的数组
char[] b = new char[26]; // 存储小写字母的数组
System.out.println("请输入英文字母,输入0结束:");
while (true) {
char input = scanner.next().charAt(0);
if (input == '0') {
break;
}
if (Character.isUpperCase(input)) {
a[countA] = input;
countA++;
} else if (Character.isLowerCase(input)) {
b[countB] = input;
countB++;
}
}
// 输出结果
System.out.println("大写字母的数量:" + countA);
System.out.println("小写字母的数量:" + countB);
// 如果需要输出具体字母,可以遍历数组a和b进行输出
System.out.println("大写字母:");
for (int i = 0; i < countA; i++) {
System.out.print(a[i] + " ");
}
System.out.println("\n小写字母:");
for (int i = 0; i < countB; i++) {
System.out.print(b[i] + " ");
}
scanner.close();
}
}
```
这段代码使用`Scanner`类来接收用户输入,并使用`Character`类中的`isUpperCase`和`isLowerCase`方法来判断输入的字符是否为大写或小写字母。同时,它使用了两个字符数组来分别存储大写字母和小写字母,并用两个计数器来统计各自数量。
注意:在实际应用中,可能需要考虑数组容量不足的情况,或者使用`ArrayList`来动态存储字符,以避免数组容量限制的问题。
阅读全文