题目:输出所有大于平均数的值
要求:本题要求编写程序,将输入的n个整数存入数组a中,然后计算这些数的平均值,再输出所有大于平均值的数。
输入格式:
输入在第1行中给出一个正整数n(1≤n≤10),第2行输入n个整数,其间以空格分隔。题目保证数据不超过长整型整数的范围。
输出格式:
输出在第1行给出平均值,保留2位小数。在第2行输出所有大于平均值的数,每个数的后面有一个空格;如果没有满足条件的数,则输出空行。
如果输入的n不在有效范围内,则在一行中输出"Invalid."。
代码如下
import java.util.Scanner;
import java.text.DecimalFormat;
public class Main {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
DecimalFormat fmt=new DecimalFormat("0.00");
int n= scan.nextInt();
int number[]=new int[n];
int sum=0;
int count=0;
if(n>10||n<1)
System.out.println("Invalid.");
else//确保n在有效范围内
{
//开始将输入的数添加到数组中
for(int index=0;index<n;index++)
{
number[index]= scan.nextInt();
sum+=number[index];
}
//计算平均值并输出
double average=(double) sum/n;
System.out.println(fmt.format(average));
//输出所有大于平均数的值
for(int index=0;index<n;index++)
{
if (number[index]>average)
{
System.out.print(number[index]+" ");
count++;
}
}
}
}
}