【程序30】
题目:有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
程序分析:首先判断此数是否大于最后一个数,然后再考虑插入中间的数的情况,插入后此元素之后的数,依次后移一个位置。
import java.util.Scanner;
public class B_30 {
public static void main(String[] args) {
int []a = new int []{1,3,5,7,9,0};
Scanner sc = new Scanner(System.in);
System.out.print("请输入一个数:");
int number = sc.nextInt();
int i,j;
for(i=0;i<a.length-1;i++){
if(a[i] >= number){
//将元素后移一位
for(j=a.length-1;j>i;j--){
a[j] = a[j-1];
}
//插入
a[i] = number;
break;
}else{
a[a.length-1] = number;
}
}
System.out.print("插入后的顺序是:");
for(i=0;i<a.length;i++){
System.out.print(a[i]+" ");
}
}
}