1樓:匿名使用者
方法本身沒有返回值,是void型別的。
system.out.println(chazhao( a,low, (mid+1), key));
你這個是要讓他輸出什麼?沒有返回值怎麼輸出?
從程式和命名看,你要做的是折半查詢吧?
從方法看,是要用遞迴來做,不過邏輯上有點小問題~low=1 不應該這麼寫,小值是傳進來的,不是直接付的。
high=a.length; 這個也同上。
網上隨便找了一個折半查詢的例子,你可以看看,我自己懶得寫了。。。
最好加註釋方便別人看懂。
2樓:匿名使用者
把system.out.println以上的** 單獨提取方法,然後加上返回型別 和return值 然後system.
out.println裡面寫剛才方法就行了。 方法命名儘量不要用拼音哦.
3樓:抓根寶寶
你的程式本身就是錯的 無返回值 查詢方法接受4個引數太多不合理 角標定義應從0起 不然你的即使能編譯也有問題 我給你改了一下 你看看
public class zheban ;
system.out.println("第"+chazhao(a,19)+"個數");
} static int chazhao(int a,int key)
else if (key > a[mid])low = mid + 1;
else if (key < a[mid])high = mid - 1;
} return -1; } }
4樓:小馬過河
首先,陣列下界是從0開始的;
其次,你的遞迴呼叫有問題,你每次呼叫時都把low、跟high分別初始為1和length,這樣還怎麼遞迴啊,永遠沒完沒了,死迴圈.....
public class zheban ;
chazhao(a,0,a.length-1,19);
}public static void chazhao(int a, int low,int high,int key)
}我改的,你試試看行不行,呵呵......
5樓:匿名使用者
println只能接收一個引數
6樓:匿名使用者
看不懂你寫的什麼意思,chazhao返回值為void,能輸出?
7樓:
chazhao 你的這個方法是沒有返回值的 而你要在輸出中引用他的結果當然會報錯了
名片印刷時字打錯了改一下用什麼工計
噴墨印表機終歸與印刷不一樣的。首先,顏料不同,印刷是油性墨,而印表機則是水性墨,所以成像肯定不同。其次,印刷機和印表機程式原理不同。所以不管怎麼調整還是有區別的。可以考慮一下買個鐳射彩色印表機,一萬上下的用著就可以。這個是最簡單的方法了。如果是在是想還是用噴墨印表機,只能給予兩條建議 一 換墨水。現...
請高手幫小弟解釋一下這個小程式
exit 0 不論程式執行到 都是直接結束程序!return 0只是返回到上次函式呼叫的地方,比函式a呼叫函式b,如果在b的某處return 0 那麼程式會返回到a!如果在main函式裡return 0的話和exit 0 效果差不多,不過在作業系統看還是有區別的,exit 0 系統認為是終止執行,r...
C中如何計算漢字的數量?幫我改一下程式
主要是因為,漢字都是兩個位元組 包括標點符號也都是兩個位元組的,所以if p 其實是錯誤的!在 裡做了修改,測試通過,如果有疑問,歡迎交流 include char inter lib 7 3 int check inter char tar return false void main 如果遇到以...