1. Java数组中,先声明一个数组降序排列,然后输入一个数插入进去,关于元素后移问题,求解
假如 scores.length=10
那就是从9开始,第9个元素等于9-1个元素。。。。。。循环
意思是 9=8; Java中 把“右边“的值赋给“左边“。
把第 8 个元素的值 赋给 第 9 个元素,以此类推。第 6 给第 7 。。。 元素就后移了
int[] scores=new int[10]; //声明一个长度为 10 的数组 按大小赋几个值,(举个从大到小的例子)
int index= scores.length; //保存新增元素插入的位置 , 即 index为 新元素的下标。
Scanner input=new Scanner(System.in);
int num=input.nextInt(); //接收要插入的元素
for(int i=0 ; i<scores.length ; i++){
if(num>scores[i]){
index=i ;// 如果插入元素的值 “大于” 数组元素的值 , 则把数组元素的 下标 赋给 插入元素
break;
}
}
for(int i=scores.length-1; i>index; i--){
scores[9]=scores[9-1]; // 假如从 9 开始,第9个元素等于(9-1)个元素。。。
//即 “把第 8 个元素的值给了第 9 个元素”8到9 可不就是后 移了 循环以此类推 7=6 ; 5=4; 右边给左边,菜鸡!
}