する#include <stdio.hの> INT (メイン){ int型 A [] = { 1、2、3、4、5、6、7、8、9、10、11、12は、13であり、14、15 }; INT = L はsizeof(A)/ 4。 ; // 長INT X = 10 ; // の値を見つけるためINT二分(int型 Xを INT * A、int型L); 二分(X、A、L); 戻り 0 ; } int型二分(INT X、INT * A、int型L){ int型、アドレス //の数の位置を見つける // 2考えると終了位置 IF(1- [X == A 1 ]){ アドレス = L- 1 ; のprintf(" %d個の\ N- " 、アドレス); リターンアドレス; } そう IF(== X [ 0 ]){ アドレス =0 ; printf(" %d個の\ n " 、アドレス)。 リターンアドレス。 } // 如果不在两端 アドレス= L / 2 。 L = L / 2 。 一方、(真){ もし(x == A [住所]){ のprintf(" %d個の\ n " 、アドレス)。 破ります; } そう であれば(X> [住所]){ L = L / 2 。 アドレス =アドレス+L; } そう IF(X < A [住所]){ L = L / 2 ; アドレス =アドレス- L; } IF(Lの== 0 ){ // L = 0を示す見つからない場合 (printf関数は「ありません見つかった" ); BREAK ; } } リターンアドレス; }