慕斯2458264
2019-04-14 00:30
index = i; //记录当前索引
}
}
arr[index] = value;
}
index = i ;就是记录数组中最大值的位置,执行第一次替换的时候arr1[1]=41,41>max,将41赋值给max。所以max的值变成了41,index=1;
继续下一个值跟max比较,后面的几个值都比41小,所以不执行if后面的命令,index一直等于1。
执行完for语句后,index=1,所以就是arr[1]=value=arr2[0]=1;
index=i;其中的if语句控制循环使得max=arr[i]的同时,将数组中最大值的下标i的值赋给变量index。这时候index的值就是数组中最大值的下标。
arr[index]=value;其中主函数传递了arr2[0]的数值给value,所以此时value的值为arr[0]的值。而arr[index]=value;就表示将数组arr2[0]中的值赋值给arr1中的最大值。这样就实现了arr2中的第一个数对arr1中最大数的替换。
因为题目要求要让value的值去替换arr[]数组中最大的值。i是当前数组最大值的下标,然后将下标i的值赋给index,所以arr[index]也是当前数组最大值,最后用arr[index]=value替换,以完成题目要求(答的不好请谅解)
C语言入门
926207 学习 · 20797 问题
相似问题