已答 0 / 28

APCS 2021/01 A 卷 第 1 題

C

第 1 / 28 題 ・ A 卷 ・ 原題號 1

上述輸出的答案為下列何者?

int func ( int a[] , int s , int f) {
    int min = 0, max = s - 1 ;
    while ( min < max ){
        int mid = (min + max) / 2;
        if ( f > a[mid] ){
            min = mid + 1;
        } else if ( f < a[mid] ){
            max = mid - 1;
        } else {
            return mid;
        }
    }
    return -1;
}
int main(){
    int a[8] = { 2, 3, 3, 5, 8, 8, 8, 8 } ;
    printf("%d", func(a, 8, 8) ) ;
}

本站識讀題目部分來自吳邦一教授公開之《APCS C 程式識讀 125 題》與《APCS Python 程式識讀 125 題》,經作者同意作為非營利教學使用。來源:吳邦一的 APCS 題解目錄

更多