25 下列C 程式的輸出應為何?
(A)-1
(B)1
(C) 2
(D)3
(A)-1
(B)1
(C) 2
(D)3
答案:登入後查看
統計: A(25), B(54), C(94), D(16), E(0) #682779
統計: A(25), B(54), C(94), D(16), E(0) #682779
詳解 (共 1 筆)
#5538737
題目內容有錯,修正成這樣應該會看懂許多
不過看程式碼內容,大概可以猜此題即二分搜尋法
最終都是要找出KEY值,也就是在陣列中找到2這個值
若都找不到就輸出-1
#include
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