關(guān)于max=arr[i],各位進(jìn)來看看
#include <stdio.h>
void replaceMax(int arr[],int value)
{
? ? int max = arr[0];
? ? int index = 0;
? ? int i;
? ? for(i=1;i<5;i++)
? ? {
? ? ? ? if(arr[i]>max)
? ? ? ? {? ?
? ? ? ? ? ? max=arr[i];? ? ? ? ? //將數(shù)組中較大的數(shù)賦值給max
? ? ? ? ? ? index = i;? //記錄當(dāng)前索引
? ? ? ? }? ? ? ? ? ? ? ? ? ??
? ? }??
? ? arr[index] = value;
}
int main()
{
? ? int arr1[] = {10,41,3,12,22};
? ? int arr2[] = {1,2,3,4,5};
? ? int i;
? ? replaceMax(arr1,arr2[0]); //將數(shù)組arr1和數(shù)組arr2的第一個元素傳入函數(shù)中
? ? for(i=0;i<5;i++)
? ? {
? ? ? ? printf("%d ",arr1[i]);? ? ? ? ? ? ? ??
? ? }
? ? return 0;? ??
}
在整個代碼中max=arr[i]過后 max就沒有出現(xiàn)過了 我覺得去掉這句也沒問題 可是不行 那么這句有什么用呢
2018-07-30
如果把max去掉,那么if語句就不能去尋找最大值了,每次循環(huán)只是尋找大于最開始的那個max值而已。
2018-07-27
運行成功,輸入錯誤
我的結(jié)果最后是這個,運行正確,至于輸入錯誤,不用管了