该课程编程题求解
这个编程我不理解求解释。
#include <stdio.h>
void replaceMax(int arr[],int value) //2)形参arr[]数组, 变量被赋值1
{
int max = arr[0]; //3)变量max被复制arr[0]号位,即10
int index = 0; //4)定义一个变量名赋初值0
int i; //5)定义变量i
for(i=1;i<5;i++) //6)循环4次,i=1.i=2.i=3.i=4
{
if(arr[i]>max) //7)第一次循环arr[1]就是41是否大于10
{
max = arr[i]; //8)只有上判断成立的才能到这里max被比他大的值取代
index = i; //9)被取代的同时记录是几号位
} //10)第四次循环结束max为数组最大的那个值.i为最大值的位置
}
arr[index] = value; //11)arr[最大值的位置]被赋值aee2[0]
}
int main()
{
int arr1[] = {10,41,3,12,22};
int arr2[] = {1,2,3,4,5};
int i;
replaceMax(arr1 , arr2[0]); //1)实参arr1数组, 实参0号位1
for(i=0;i<5;i++) //12)打印输出5次分别是arr1的0号位至四号位
{
printf("%d ",arr1[i]); //13)不明白看14)
} //14)你可以把 int arr1[] = {10,41,3,12,22};
return 0; //看成是5个变量分别是
} //int 随意变量名1=10;
//int 随意变量名2=41;
//int 随意变量名3=3;
//int 随意变量名4=12;
//int 随意变量名5=22;
//变量随意变量名2被改变了
举报