我是一名IT学生,我真的需要完成这段代码的编写,我几乎已经完成了它,它使用冒泡排序对数字进行排序但事情是,我们必须在最后找到平均值,并且我不知道该怎么做。有谁能够帮我? 我的代码看起来像这样,直到这里它也有效,我只需要将其余的添加到它:
public static void main(String[] args) {
int num, i, j;
double temp;
@SuppressWarnings("resource")
Scanner input = new Scanner(System.in);
System.out.println("Enter the amount of Numbers you want to sort:");
num = input.nextInt();
double array[] = new double[num];
System.out.println("Enter " + num + " Number: ");
for (i = 0; i < num; i++)
array[i] = input.nextDouble();
for (i = 0; i < (num - 1); i++) {
for (j = 0; j < num - i - 1; j++) {
if (array[j] > array[j + 1]) {
temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}
}
}
System.out.println("Sorted list:");
for (i = 0; i < num; i++)
System.out.println(array[i]);
}
}
谢谢:)
答案 0 :(得分:0)
int avg = 0;
for (i = 0; i < num; i++) {
avg = avg + array[i];
}
avg = avg / array.length();
答案 1 :(得分:0)
你只需要编辑一下。只需在程序中添加一个变量平均值,如果需要整数平均值,则添加int变量;如果需要精确结果,则添加浮点数(如下面的代码所示)。将所有元素求和为变量sum(整数元素),然后除以元素总数(基本数学!!!)。就是这样,打印它就完成了。
你的程序应该如下:
public static void main(String[] args) {
int num, i, j, sum=0;
float avg=0;
double temp;
@SuppressWarnings("resource")
Scanner input = new Scanner(System.in);
System.out.println("Enter the amount of Numbers you want to sort:");
num = input.nextInt();
double array[] = new double[num];
System.out.println("Enter " + num + " Number: ");
for (i = 0; i < num; i++)
array[i] = input.nextDouble();
for (i = 0; i < (num - 1); i++) {
for (j = 0; j < num - i - 1; j++) {
if (array[j] > array[j + 1]) {
temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}
}
}
System.out.println("Sorted list:");
for (i = 0; i < num; i++)
System.out.println(array[i]);
for (i = 0; i < num; i++)
sum = sum+array[i];
avg=sum/num;
System.out.println("Average : "+avg);
}
}