題目
【103.關務】
答案
#include <stdio.h>
int max,min;
void findMinMax(int A[10],int *max ,int *min){
//初始化,一開始先比大小,大的值存入*max ,小的值存入*min
if(A[0]>A[1]){
*max = A[0];
*min = A[1];
}
else{
*max = A[1];
*min = A[0];
}
//兩兩抓出來必較,大的值跟max比,小的值跟min比
for(int i=2;i<10;i+=2)
if(A[i] > A[i+1]){
if(A[i] > *max)
*max = A[i];
if(A[i+1] < *min)
*min = A[i+1];
}
else{
if(A[i+1] > *max)
*max = A[i+1];
if(A[i] < *min)
*min = A[i];
}
}
考點分析
這題的重點是用for迴圈分別找最大值跟最小值要找18次,但如果使用兩兩一組的方式比較,就可以降為13次。






