import java.util.*;
public class demo1 {
/*
* ================================================================
* 题目2:有一组数为1,3,5,7,9,保存在一个数组中,现接受用户输入一个整数6, 要求将6插入到数组中,
* 且保持数组中元素仍按从小到大排序
* 分析:(1)首先数组长度为6,来保证插入数6后数组长度够长 (2)先从第一个元素开始查找,整数6可以插入的位置
* (3)从最后一个元素开始到插入的位置止,所有的元素都向后移动一位,来空出要插入数据的位置 (4)空出插入位置后,
* 将6插入即可
* ================================================================
*/
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int[] no = new int[] { 1, 3, 5, 7, 9, 0 }; // 在数组中用0来占据一个空间放在最后
System.out.print("请输入一个数:");
int num = input.nextInt();
int i = no.length - 1; // 保存插入位置
// (1)先从第一个元素开始查找可以插入的位置
for (int j = 0; j < no.length - 1; j++) {
if (no[j] > num) {
i = j;
break;
}
}
// (2)从最后一个元素开始到插入的位置止,所有的元素都向后移动一位,来空出要插入数据的位置
for (int j = no.length - 1; j > i; j--) {
no[j] = no[j - 1];
}
// (3)空出插入位置后,将我们输入的数插入即可
no[i] = num;
System.out.println("\n从小到大排序输出:");
for (int j = 0; j < no.length; j++) {
System.out.print(no[j] + "\t");
}
}
}
10-13