- 计算并输出所有输入整数的总和。
- 计算并输出输入整数的平均值(负数不计入统计)。
- 如果用户未输入任何有效整数(只输入了负数),程序应输出提示信息“没有有效输入”。
- 使用循环来处理输入的整数。
- 使用条件判断来忽略负数输入,并避免除以零的错误。
请编写代码来解决这个问题,并给出一个示例输入和输出。
请编写代码来解决这个问题,并给出一个示例输入和输出。
import java.util.Scanner;
public class CountNumTest {
public static void main(String[] args) {
// sum存储输入的整数的和,ngt为负数的标志,值为1说明输入的全是负数,值为0说明输入了非负整数
// num存储输入的整数个数,n临时存储输入的每个整数
int sum=0,ngt=1,num=0,n;
double avg=0; // avg存储输入的整数的平均值
Scanner sc = new Scanner(System.in);
// https://blog.csdn.net/qq_64628470/article/details/127605481
while(sc.hasNext()) { // 循环从输入获取整数,直到输入的不是整数
n=sc.nextInt(); // 从输入获取一个整数,存入变量n中
if(n>=0) { // 如果输入的整数大于等于0,则将其累加到和sum中,同时负数标志值0,表示读入了非负整数,非负整数计数器+1
sum+=n;
ngt=0;
num++;
}
}
if(ngt==1) { // 如果输入的全是负数,则输出对应的提示信息
System.out.println("没有有效输入");
}else { // 其他情况,则计算平均值,并输入总和和平均值
if(num>0) {
avg=sum*1.0/num;
}
System.out.println(sum);
System.out.println(avg);
}
}
}
