java中键盘输入一组正整数,以空格(或回车)做分隔,要求输入-99 结束 输入,
时间: 2023-11-12 12:03:38 浏览: 106
可以使用Scanner类来实现键盘输入,并使用循环读取输入直到遇到-99为止。具体代码如下:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in); // 创建Scanner对象
System.out.print("请输入一组正整数(以空格或回车分隔,以-99结束): ");
while (true) {
int num = input.nextInt(); // 读取输入的整数
if (num == -99) { // 如果输入-99,结束循环
break;
}
// 在这里进行对输入的正整数的操作,如输出、计算等
System.out.println("输入的整数为:" + num);
}
input.close(); // 关闭Scanner对象
}
}
```
注意,如果输入非整数类型的数据,程序会发生异常。可以考虑使用try-catch语句来处理异常情况。
相关问题
java中键盘输入一组正整数,以空格(或回车)做分隔,要求输入-99 结束 输入,并求其中偶数的和,
可以使用 Scanner 类来获取键盘输入,然后使用循环逐个读取输入的整数,并判断是否为 -99,如果是则退出循环,否则判断是否为偶数,如果是则累加到和变量中。具体实现可以参考下面的代码:
```java
import java.util.Scanner;
public class SumOfEvenNumbers {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int sum = 0;
while (true) {
int num = scanner.nextInt();
if (num == -99) {
break;
}
if (num % 2 == 0) {
sum += num;
}
}
System.out.println("The sum of even numbers is " + sum);
}
}
```
在上面的代码中,我们定义了一个名为 `SumOfEvenNumbers` 的类,其中包含了一个名为 `main` 的方法,在该方法中实现了对键盘输入的整数进行读取和求和的功能。具体来说,我们首先创建了一个 Scanner 对象来读取键盘输入,然后定义了一个变量 sum 来记录偶数的和。接着,我们使用一个无限循环来逐个读取输入的整数,如果读取到的整数是 -99,则退出循环,否则判断该整数是否为偶数,如果是则将其累加到和变量中。最后,我们输出偶数的和到控制台上。
用C语言写出输入1个正整数n,在输入n个字符,分别统计其中英文字母、空格或回车、数字字符和其他字符的个数
好的,下面是代码:
```c
#include <stdio.h>
int main() {
int n, i;
char c;
int letters = 0, spaces = 0, digits = 0, others = 0;
printf("请输入正整数n:");
scanf("%d", &n);
printf("请输入%d个字符:\n", n);
for (i = 0; i < n; i++) {
scanf(" %c", &c);
if (c >= 'a' && c <= 'z' || c >= 'A' && c <= 'Z') {
letters++;
} else if (c == ' ' || c == '\n') {
spaces++;
} else if (c >= '0' && c <= '9') {
digits++;
} else {
others++;
}
}
printf("英文字母的个数:%d\n", letters);
printf("空格或回车的个数:%d\n", spaces);
printf("数字字符的个数:%d\n", digits);
printf("其他字符的个数:%d\n", others);
return 0;
}
```
代码说明:
1. 首先输入正整数n,表示接下来要输入n个字符。
2. 循环输入n个字符,每次读入一个字符c。
3. 判断c属于哪一类:英文字母、空格或回车、数字字符、其他字符。分别累加对应计数器的值。
4. 最后输出各类字符的个数。注意要用空格分隔各个输出项,以免混淆。