#include <stdio.h>
int numbers[1000001] = {0};
int i,j;
int m;
int left, right, mid;
int n, k;
int BinarySearch(int (*numbers)[i], int m);
int main() {
// 反复读入数字和查找数字的数量
while (scanf("%d %d", &n, &k) != EOF) {
// 读入给定的数字
for (i = 0; i < n; i++) {
scanf("%d", &numbers[i]);
}
for (j = 0; j < k; j++) {
// 读入待查找的数字,
scanf("%d", &m);
printf("%d", BinarySearch((*numbers)[i], m));
}
}
}
int BinarySearch(int (*numbers)[i], int m)
{
left = 0, right = k - 1;
while (left <= right)
{
mid = (left + right) / 2;
if (numbers[mid] == m)
{
printf("%d", m);
if (j < k)
printf(" ");
}
if (numbers[mid] < m)
{
left = mid + 1;
}
if (numbers[mid] > m)
{
right = mid - 1;
}
printf("0");
}/*while*/
return -1;
}/*function binarysearch*/
Main.c:19:49: error: subscripted value is neither array nor pointer nor vector
printf("%d", BinarySearch((*numbers)[i], m));
^