C幫我看這個程式為什麼不成功折半查詢

時間 2022-08-17 18:45:08

1樓:松睿博

你的程式沒有什麼大錯誤。也不需要進行演算法修改!

你只是出了一點小錯誤!

1····if(ba[k-1])cout<<"沒有你查詢的數"

因為排列之後是從大到小排列的!

所以當輸入的數字比第乙個小且比最後乙個大才找得到!

當輸入的數字比最後乙個小或者比第乙個大才找不到!

這是粗心的錯漏!

2樓:匿名使用者

你的錯誤在search()函式中,你把最大值與最小值弄反了,還有你的函式裡用的值錯了,應該是n,你用的b

修改如下,執行沒有問題

#include

using namespace std;

int i,j,t,b,c,k=15;

int a[15];

int search(int n,int a[15])

3樓:匿名使用者

你那個search只跑了一次吧....

就是最開始那一次..

之後也沒有再call回去, 即是只要你的目標數不是正中間的數就出不到答案...

你試一試輸入15個數之後, 搜第7或8個看看, 應該就看到了

4樓:笑熬將胡

for(j=0;ja[k-1])

cout<<"沒有你查詢的數"<

else

while(low

if(b

higt=mid;

else

low=mid;

}return -1;}

幫我看看這個C語言程式怎麼錯了

include include int max int i,int j int min int i,int j return end int main void include include 定義的max和min函式與stdlin庫函式中的max和min重名 int max int i,int j...

為什麼面試四次都不成功

面試的時候你應該注意這些問題 面試前的準備 面試前要先預想主考官會問的問題,並準備謹慎而有條理地回答。事先有準備的人,表情和肢體語言比較篤定從容,且具備較好的回應能力。大學畢業生由於缺乏面試經驗,可事先找朋友練習面試技巧。面試時最好提前10分鐘到達地點,先去洗手間放鬆一下,整理一下思路,還可最後檢查...

為什麼我用電飯煲做蛋糕都不成功

布洛洛 我經常用電飯煲做蛋糕的,相當好吃。不知道你用的方子是怎樣的,說不定是方子有錯。電飯煲和烤箱不一樣,蛋糕裡千萬不能加水或牛奶,否則一定是塌的。然後就是電飯煲過一會兒就會跳起來,跳起來後一兩分鐘就得把它按回去,別等久了。反正電飯煲做出來是會有一點塌塌的,你可以放點小蘇打進去,效果很好的。 相海瑤...