Primeiro, você postou duas definições diferentes para a função pesquisa. Considerarei no meu comentário apenas a última. Bem, aqui o seu código apresentou basicamente quatro erros de compilação no GCC : 1 - Utilização da função strcmp sem o arquivo de cabeçalho string.h. Para resolver isso, apenas adicione isto ao topo do seu código completo:
#include "string.h"
2 - Falta de declaração do dado chassis. Deve-se realizar essa declaração, como feito, por exemplo, nesta linha para a variável passageiros: int passageiros[SIZE];
3 - Comparação, na linha abaixo, de uma estrutura de dados com um único dado. Isso não pode ser feito, o que significa que o seu código tem que ser repensado . if (id[i] == idpesquisa)
Poderia ser feita a comparação de um dado da variável array id com idpesquisa, como neste caso: if (id[i][0] == idpesquisa)
4 - Por fim, nesta linha deveria haver uma expressão dentro dos parênteses do while: }while();
Como neste exemplo, para um laço ou loop infinito: }while(1);
Espero ter ajudado .