java问题
//注意导包
import java.text.DecimalFormat;
import java.util.Scanner;
//这是一个程序
public class Demo1 {
public static void main(String[] args) {
Scanner input =new Scanner(System.in);
// 定义数组
double[] num=new double[8];
// 平均数
double avg=0;
// 数组值总和
double sum=0;
// 数组个数存储
double geshu=0;
// 输入数组数值
System.out.println("请输入8个数字");
for (int i = 0; i < num.length; i++) {
num [i] = input.nextDouble();
// 计算和及个数
sum=sum+num[i];
geshu=geshu+1;
// 输出原始数组
System.out.print(num[i]+"\t");
}
System.out.println();
// 输出排列后的数组
System.out.println("从小到大排列");
double n=0;
for (int i = 0; i < num.length; i++) {
// j=i+1(错误点:j=1。每次循环都重头开始)
for(int j=i+1;j < 8;j++){
if(num[i]>num[j]){
n=num[i];
num[i]=num[j];
num[j]=n;
}
}
}
// 输出重新排列后的数组
for (int i = 0; i < num.length-1; i++) {
System.out.print(num[i]+"\t");
}
System.out.println();
// 数值计算
avg=sum/geshu;
double max=num[0];
double min=num[0];
double t=0;
// 循环判断最大值,最小值
for(int i=1; i<8;i++){
if(max<num[i]){
t=max;
max=num[i];
num[i]=t;
}
if(min>num[i]){
t=max;
max=num[i];
num[i]=t;
}
}
// 输出最大值,最小值,平均数
System.out.println("max:"+max);
System.out.println("min:"+min);
System.out.println("平均数为"+new DecimalFormat("#.##").format(avg));
}
}