25 下列C 程式的輸出應為何? 
 


(A)-1

(B)1

(C) 2

(D)3

答案:登入後查看
統計: A(25), B(54), C(94), D(16), E(0) #682779

詳解 (共 1 筆)

#5538737

題目內容有錯,修正成這樣應該會看懂許多

不過看程式碼內容,大概可以猜此題即二分搜尋法

最終都是要找出KEY值,也就是在陣列中找到2這個值

若都找不到就輸出-1


#include int unknown(int array [], int size , int key) {

int left = 0, right = size-1, middle;

while( left <= right)

{

 middle = (left+right)/2;

 if( array[middle] == key){

 return( array[middle]);

}

else if( array[middle]> key)

right = middle- 1;

else

left = middle + 1;

}

return(-1);

}

void main(){

int list[]={1,2,3,4,5};

int output =unknown(list, 5, 2);

printf("%d", output);

}



0
0