do while程式

假設陣列A有10個元素,分別為2、4、6、8、10、12、14、16、18、20,請問若要找尋1、3、13及21四個數字於下列程式中,do while內的敘述分別執行多少次

i=1 ;

j=10 ; /*因為A陣列有10個元素*/

do{

k=(i+j)/2 ;

if (A[k]<=X) /*X為欲尋找的鍵值*/

i=k+1 ;

else

j=k-1 ;

}while (i<=j) ;

Update:

可以幫我算出答案嗎??(急需解)

Update 2:

今日已交出作業了雖然不知是否正確不過還是感謝你!!

1 Answer

Rating
  • 1 decade ago
    Favorite Answer

    設一個整數變數 n=0

    在do while中放入 n++;

    最後在印出 n的值

    就可以知道在do while中執行多少次

    2006-10-02 23:06:38 補充:

    1-----3次3-----3次13---3次21---4次

    2006-10-02 23:21:27 補充:

    1----- if 執行0次, else 執行3次, do while 執行3次3----- if 執行0次, else 執行3次, do while 執行3次13---- if 執行1次, else 執行2次, do while 執行3次21---- if 執行3次, else 執行1次, do while 執行4次

    Source(s): 自己
Still have questions? Get your answers by asking now.