求指教 1是怎么输出的哪来的
如题麻烦大家了
从下面(1)-(5)顺序看思路,即替换过程。
#include <stdio.h>
void replaceMax(int arr[],int value)………………… arr1[]={10,41,3,12,22} (2)
{
int max = arr[0]; ………………… 此时max=10 (3)
int index = 0;
int i;
for(i=1;i<5;i++) …………………… i arr= max index
{
if(arr[i]>max) 1 arr1=41>10 41 1
{ 2 arr2=3 <41 41 1
max=arr[i]; //将数组中较大的数赋值给max 3 arr3=12<41 41 1
index = i; //记录当前索引 4 arr4=22<41 41 1 (4)
}
}
arr[index] = value; ………………………………arr1=value//将value的值赋予arr1
} (1)处value值即为arr2[0],所以 arr1=1,即把41替换为1,其余
int main() 不变。 (5)
{
int arr1[] = {10,41,3,12,22};
int arr2[] = {1,2,3,4,5};
int i;
replaceMax(arr1,arr2[0]); ………………………………我们从这里看起,函数replaceMax引入数组arr1 (1)
到上面函数
printf("%d\n",arr2);
for(i=0;i<5;i++)
{
printf("%d ",arr1[i]);
}
return 0;
}
举报