程式設計題目:
16.編一個程式,輸入10個整數,并放在數組中,先降序輸出所有的數字,再統計并輸出其中正數,負數和零的個數(不可使用Array.sort())。
示例代碼:
package program.calculation.exercise16;
import java.util.Scanner;
/**
* 16.編一個程式,輸入10個整數,并放在數組中,先降序輸出所有的數字,
* 再統計并輸出其中正數,負數和零的個數(不可使用Array.sort())。
*/
public class NumberHandle {
public static void main(String[] args) {
int[] arr = new int[10];
System.out.println("請輸入10個數字:");
@SuppressWarnings("resource")
Scanner scanner = new Scanner(System.in);
for(int i=0;i<arr.length;i++){
arr[i] = scanner.nextInt();
}
downOrder(arr);
countArr(arr);
}
//降序:冒泡排序
private static void downOrder(int[] arr) {
for(int i=0;i<arr.length;i++){
for(int j=0;j<arr.length-i-1;j++){
if(arr[j+1] > arr[j]){
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
System.out.println("數組排序後順序:");
for(int n : arr){
System.out.print(n+" ");
}
}
//計數
private static void countArr(int[] arr) {
int plusCount = 0;//正數
int minusCount = 0;//負數
int zeroCount = 0;//零
for(int i=0;i<arr.length;i++){
if(arr[i] > 0){
plusCount++;
}else if(arr[i] < 0){
minusCount++;
}else{
zeroCount++;
}
}
System.out.println();
System.out.println("正數個數:"+plusCount);
System.out.println("負數個數:"+minusCount);
System.out.println("零個數:"+zeroCount);
}
}