#include <stdio.h>
#include <stdlib.h>

char *input_argv[] = { "prog.c", "11", "5", "7", "11", "22" };      // al posto di argv[]
int   input_argc   = sizeof (input_argv) / sizeof (input_argv[0]);  // al posto di argc

int
ricercaseq (int lista[], int x, int a, int z)
{
    if (a > z)
      {
        // La corrispondenza non è stata trovata.

        return -1;
      }
    else if (x == lista[a])
      {
        return a;
      }
    else
      {
        return ricercaseq (lista, x, a+1, z);
      }
}

int
main (int argc, char *argv[])
{
    int *lista = (int *) malloc ((input_argc - 2) * sizeof (int));
    int x;
    int i;

    // Acquisisce il primo argomento come valore da cercare.

    sscanf (input_argv[1], "%i", &x);

    // Considera gli argomenti successivi come gli elementi
    // dell'array da scandire.

    for (i = 2; i < input_argc; i++)
      {
        sscanf (input_argv[i], "%i", &lista[i-2]);
      }
 
    // Esegue la ricerca.

    i = ricercaseq (lista, x, 0, input_argc - 2);

    // Emette il risultato.

    printf ("%i si trova nella posizione %i\n", x, i);

    return 0;
}