Arrays 从方法返回数组
所以我必须显示低于平均水平的分数,以及高于平均水平的所有分数Arrays 从方法返回数组,arrays,netbeans,methods,return,Arrays,Netbeans,Methods,Return,所以我必须显示低于平均水平的分数,以及高于平均水平的所有分数 public static void printIntArray(int[]x) { for(int i=0;i<x.length;i++){ System.out.println (x[i]); } } 我不知道下一步该怎么做,但以下是我目前掌握的情况: public static void main (String[]args) { int[]marks={50,60,30,90,7
public static void printIntArray(int[]x) {
for(int i=0;i<x.length;i++){
System.out.println (x[i]);
}
}
我不知道下一步该怎么做,但以下是我目前掌握的情况:
public static void main (String[]args) {
int[]marks={50,60,30,90,70,40,80,44};
int average=average(marks);
int[]resultBelowAverage=getBelowAverage(marks,average);
printIntArray(resultBelowAverage);
int[]resultAverageandAbove=getAverageandAbove(marks,average);
printIntArray(resultAverageandAbove);
}
下一种方法用于计算平均值。我得到了正确答案,答案是58
public static int average(int[] marks) {
int i=0;
int total=0;
for(i=0;i<marks.length;i++){
total=total+marks[i];
}
int average=total/i;
return average;
}
下一个方法获取数组中低于平均值的值。我想这就是我错的地方
public static int[] getBelowAverage(int[]numbers,int av) {
int size=countBelowAverage(numbers,av);
int[]belowAverage=new int[size];
return belowAverage;
}
下一个方法获取数组中高于平均值的值
public static int countBelowAverage (int[] numbers,int av){
int size=0;
for(int i=0;i<numbers.length;i++) {
if (numbers[i]<av) {
size=size+1;
}
}
return size;
}
public static int countAboveAverage (int[] numbers,int av) {
int size=0;
for(int i=0;i>=numbers.length;i++) {
if (numbers[i]>=av) {
size=size+1;
}
}
return size;
}
public static int[] getAverageandAbove(int[] numbers,int av) {
int size=countAboveAverage(numbers,av);
int[]AboveAverage=new int[size];
return AboveAverage;
}
最后一种方法打印分类为低于平均值和高于平均值的数组
public static void printIntArray(int[]x) {
for(int i=0;i<x.length;i++){
System.out.println (x[i]);
}
}
公共静态无效打印阵列(int[]x){
对于(int i=0;i在方法中,您只需创建大小合适的数组,一个空数组并返回它们。在返回之前,您应该在这些数组上加上一些低于/高于平均值的标记
就像这里:
int[]belowAverage=new int[size];
//you have an empty array just after creation with nothing inside
//enter here marks from the marks array that are below average
return belowAverage;
与此情况完全相同:
int[]AboveAverage=new int[size];
//you have an empty array just after creation with nothing inside
//enter here marks from the marks array that are above average
return AboveAverage;
您可以使用peeskillet的算法来执行此操作。尝试类似的方法以获得低于平均值的数组
public static int[] getBelowAverage(int[]numbers,int av){
int size=countBelowAverage(numbers,av);
int[]belowAverage=new int[size];
int j = 0;
for (int i = 0; i < numbers.length; i++){
if (numbers[i] < av){
belowAverage[j] = numbers[i];
j++;
}
}
return belowAverage;
}
public static int[]getBelowAverage(int[]number,int-av){
int size=countBelowAverage(数字,av);
int[]belowAverage=新int[size];
int j=0;
for(int i=0;i
在GetAverage方法中,对高于平均值的方法执行类似操作,然后在上面创建数组,但不在其中放入任何内容。
你应该再次循环你的数字数组,并用大于平均值的值填充你的高于平均值的数组。你对哪些方法有问题?对不起,为什么这个问题被否决了?好吧,也许问题不是很清楚,但一位作者努力提供代码,似乎她/他真的在工作在这个问题上,我们不要阻止人们提问。
public static void printIntArray(int[]x) {
for(int i=0;i<x.length;i++){
System.out.println (x[i]);
}
}