【发布时间】:2021-07-01 09:00:51
【问题描述】:
这是我的代码:
import java.util.*;
class minmax{
public static int getSmallest(int[] a, int n){
Arrays.sort(a);
return a[0];
}
public static void main(String args[]){
int[] a = new int[20];
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
System.out.println("Enter Array Elements: ");
for(int i=1; i < n ;i++){
a[i] = sc.nextInt();
}
System.out.println("Smallest: "+getSmallest(a,n));
}
}
你能告诉我哪里出错了吗?
问题概述: 我必须从用户那里获取输入(数组元素和数组大小),然后从用户的输入中找到最小的元素。
【问题讨论】:
-
数组中存储第一个元素的索引是多少?
-
int n在这里做什么?您还没有使用该变量。 -
因为在读取用户输入时没有为
a[ 0 ]赋值。因此,a[0] 始终为0。 -
你的错误是:你没有添加一点代码来循环数组并将内容打印到屏幕上,所以你可以看到那里有很多零。这是一个基本的调试技巧(不使用实际的调试器,这对你来说可能有点过头了);如果您对数据有疑问,请让这些数据对您可见。