int?數字[100001];?//全局變量,數組編號太大,必須在這裏定義。
int?Bsearch(int?數字[],?int?左,?int?對嗎?int?k);
int?主()
{
int?我,?j,?k,?m,?n;
//數組編號太大,無法放在主函數中,但應該在函數外部定義。
//否則函數棧會溢出。
//原碼int?數字[100001];
//?反復讀入數字,求數字的個數。
什麽時候?(scanf("%d?%d ",& ampn,?& ampk)?!=?EOF)
{
//?讀入給定的數字
為了什麽?(我?=?0;?我?& lt?n;?i++)
{
scanf("%d ",& amp數字[I]);
}
為了什麽?(j?=?0;?j?& lt?k;?j++)
{
//?讀入要搜索的號碼,
scanf("%d ",& ampm);
//?請完成下面查找讀入號的功能。
int?ret
ret?=?Bsearch(數字,0,?n?-?1,?m);
printf("%d ",ret);
如果?(j?!=?k?-?1)
{
printf("?);
}
}
printf(" \ n ");
}
回歸?0;
}
int?Bsearch(int?數字[],?int?左,?int?對嗎?int?m)
{
int?mid
什麽時候?(左?& lt=?對吧)?//原代碼while?(左?& lt?右)
{
mid?=?(左?+?對吧)?/?2;
如果?(numbers[mid]?==?m)
{
回歸?mid?+?1;
}
不然呢?如果?(numbers[mid]?& gt?m)
{
對嗎?=?mid?-1;
}
其他
{
向左?=?mid?+?1;
}
}
回歸?0;
}