fork download
  1. #include <stdio.h>
  2.  
  3. char *input_argv[] = { "prog.c", "11", "5", "7", "11", "22" }; // al posto di argv[]
  4. int input_argc = sizeof (input_argv) / sizeof (input_argv[0]); // al posto di argc
  5.  
  6. int
  7. ricercaseq (int lista[], int x, int a, int z)
  8. {
  9. int i;
  10.  
  11. // Scandisce l'array alla ricerca dell'elemento.
  12.  
  13. for (i = a; i <= z; i++)
  14. {
  15. if (x == lista[i])
  16. {
  17. return i;
  18. }
  19. }
  20.  
  21. // La corrispondenza non è stata trovata.
  22.  
  23. return -1;
  24. }
  25.  
  26. int
  27. main (int argc, char *argv[])
  28. {
  29. int lista[argc - 2];
  30. int x;
  31. int i;
  32.  
  33. // Acquisisce il primo argomento come valore da cercare.
  34.  
  35. sscanf (input_argv[1], "%i", &x);
  36.  
  37. // Considera gli argomenti successivi come gli elementi
  38. // dell'array da scandire.
  39.  
  40. for (i = 2; i < input_argc; i++)
  41. {
  42. sscanf (input_argv[i], "%i", &lista[i-2]);
  43. }
  44.  
  45. // Esegue la ricerca.
  46.  
  47. i = ricercaseq (lista, x, 0, input_argc - 2);
  48.  
  49. // Emette il risultato.
  50.  
  51. printf ("%i si trova nella posizione %i\n", x, i);
  52.  
  53. return 0;
  54. }
Success #stdin #stdout 0.02s 1720KB
stdin
Standard input is empty
stdout
11 si trova nella posizione 2