題目描述:
定義一個int型的一維數組,包含10個元素,分別賦一些隨機數,然後求出所有元素的最大值,最小值,和值,平均 值,並輸出出來。
要求:所有隨機數都是兩位數。[10,99]
解析:
在本題中,最爲需要注意的點有:
1)、如何使用Java自帶的產生隨機數的函數,產生一定範圍的數
2)、在比較最大值與最小值的時候,我們可以以開頭的元素爲基準,防止出現錯誤
下面是產生特定隨機數的方法總結:
[0.0,1) Math.random():
[0.0,90.0) Math.random()*90:
[0,89] (int)Math.random()*90:
[10,99] (int)(Math.random()90+10):
公式:獲取[a,b]範圍的隨機數:(int)(Math.random()(b-a+1))+a
public class ArrayTest1 {
public static void main(String[] args) {
int[] arr = new int[10]; //定義一個長度爲10的一維數組
//循環遍歷進行賦值
for (int i = 0; i < arr.length; i++) {
arr[i] = (int)(Math.random()*90)+10;
}
//循環輸出進行測試
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]+"\t");
}
System.out.println();
//找出數組中的最大值
int max = arr[0]; //不賦值爲0 的原因如果都是負數的話,輸出的結果都爲0
for (int i = 0; i < arr.length; i++) {
if(max<arr[i]) {
max = arr[i];
}
}
System.out.println("隨機數中的最大值爲:"+max);
int min = arr[0]; //不賦值爲0 的原因如果都是負數的話,輸出的結果都爲0
for (int i = 0; i < arr.length; i++) {
if(min>arr[i]) {
min = arr[i];
}
}
System.out.println("隨機數中的最小值爲:"+max);
int sum = 0;
for (int i = 0; i < arr.length; i++) {
sum = sum+arr[i];
}
System.out.println("隨機數中的和爲:"+sum);
int avg = sum /arr.length;
System.out.println("平均數爲:"+avg);
}
}