#include //為了方便返回,使用結構體儲存最大值和最小值typedef struct { int Max; int Min;}MaxMin; //函式引數array:陣列,length:陣列長度。//這裡其實可以把最大值最小值作為指標傳進去的。 MaxMin GetMaxMin(int *array, int length){ int i; MaxMin maxMin; if (length <= 0) return maxMin; //初始化最大值和最小值為陣列第一個數 maxMin.Max = array[0]; maxMin.Min = array[0]; for (i = 0; i < length; i++) { if (array[i] >= maxMin.Max) maxMin.Max = array[i]; //比當前最大值大,修改最大值 if (array[i] <= maxMin.Min) maxMin.Min = array[i]; //比當前最小值小,修改最小值 } return maxMin;}//主函式測試int main() { int length; int i; int *array; printf("input length of array:"); scanf("%d", &length); array = (int *)malloc(sizeof(int)*length); for (i = 0; i < length; i++) { printf("input data of array(index %d):", i + 1); scanf("%d", array + i); } MaxMin maxMin = GetMaxMin(array, length); printf("Max:%d,Min:%d", maxMin.Max, maxMin.Min); return 0;}
#include //為了方便返回,使用結構體儲存最大值和最小值typedef struct { int Max; int Min;}MaxMin; //函式引數array:陣列,length:陣列長度。//這裡其實可以把最大值最小值作為指標傳進去的。 MaxMin GetMaxMin(int *array, int length){ int i; MaxMin maxMin; if (length <= 0) return maxMin; //初始化最大值和最小值為陣列第一個數 maxMin.Max = array[0]; maxMin.Min = array[0]; for (i = 0; i < length; i++) { if (array[i] >= maxMin.Max) maxMin.Max = array[i]; //比當前最大值大,修改最大值 if (array[i] <= maxMin.Min) maxMin.Min = array[i]; //比當前最小值小,修改最小值 } return maxMin;}//主函式測試int main() { int length; int i; int *array; printf("input length of array:"); scanf("%d", &length); array = (int *)malloc(sizeof(int)*length); for (i = 0; i < length; i++) { printf("input data of array(index %d):", i + 1); scanf("%d", array + i); } MaxMin maxMin = GetMaxMin(array, length); printf("Max:%d,Min:%d", maxMin.Max, maxMin.Min); return 0;}