public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
//在此输入您的代码...
int n=scan.nextInt();
int max = 0;
int min =100;
float sum = 0;
float avg = 0;
int []a = new int[n];
for(int i =0;i<n;i++){
a[i]=scan.nextInt();
if(a[i]>=max)
max=a[i];
if(a[i]<=min)
min=a[i];
sum+=a[i];
}
avg = sum/n;
System.out.println(max);
System.out.println(min);
System.out.printf("%.2f",Math.round(avg * 100.0) / 100.0);
scan.close();
}
}
其实就是找最大值最小值以及算平均数,要注意的点
1.刚开始把min的初始值写为了0,导致后续错误。
2.然后又是熟悉的四舍五入,保留两位小数的问题,那么关于先×再÷100的问题,应该是这个函数是针对小数后一位取舍的?
math.round()中输入浮点数,输出结果为int。
3.System.out.println()
方法不支持直接传递格式化字符串和参数的方式来输出格式化的内容。正确的做法是使用 System.out.printf()
方法来格式化输出。
4.其实找最大最小值应该有别的方法,但是好懒哦。下面是一个方法。但是好像这道题目不需要那么复杂。