Buon giorno a tutti!
Oggi pongo un altro quesito....
Ho creato un programma che stampa un array con elementi definiti dall'utente e cerca un elemento scelto dall'utente se è ripetuto nell'array.
Dovrei però far stampare anche la posizione della prima ripetizione nell'array qualora ci fosse... Come posso fare?
codice:#include <stdio.h> #include <stdlib.h> #define max 30 void leggi_v (int v1[], int dim) { int i; printf ("Inserire gli elementi del vettore\n\n"); for (i=0; i<dim; i++) { printf ("Elemento %d: ", i+1); scanf ("%d", &v1[i]); } } void stampa_v (int v1[], int dim) { int i; printf ("Il mio vettore sara' composto dai seguenti numeri \n"); for (i=0; i<dim; i++) { printf ("Elemento n.%d: %d\n", i+1, v1[i]); } } void cerca_rip (int v1[], int dim) { int trovato = false; int i = 0; int a; printf ("Inserire l'elemento che si desidera controllare: "); scanf ("%d", &a); while ((i<dim) && !trovato) { if (v1[i] == a) trovato = true; else i++; } if (trovato) { printf ("Elemento ripetuto nel vettore: %d\n\n", a); printf ("L'elemento si trova in posizione: %d", v1[a]); // ??????? } else { printf ("Non ci sono ripetizioni."); } } typedef int vet1[max]; int main() { vet1 v1; int dim; printf ("Inserisci il numero di elementi dei vettori: "); scanf ("%d", &dim); leggi_v (v1, dim); stampa_v (v1, dim); cerca_rip (v1, dim); }

Rispondi quotando
