Ho modificato il codice così:
può andar bene così?codice:#include <stdio.h> #include <ctype.h> #define MAX_ELE 100 main() { int i,n; char v[MAX_ELE]; printf("\n// Il programma permette di caricare un vettore di caratteri\n// e se l'elemento digitato è gia presente nel vettore\n// verrà chiesto di digitarlo di nuovo.\n\n"); do { printf("numero di elementi(massimo 100): "); scanf("%d",&n); } while(n<1 || n>MAX_ELE); printf("\n"); fflush(stdin); printf("CARICAMENTO DEL VETTORE\n") for(i=0;i<n;i++) { short int repeat; do { repeat=0; int j; printf("inserisci un carattere stampabile: "); scanf("%c",&v[i]); while(getc(stdin)!= '\n'); for(j=0;j<i && !repeat;j++) if (v[i] == v[j]) { printf("l'elemento è già presente, inserire nuovamente un carattere stampabile: "); scanf("%c",&v[i]); repeat=1; } } while(repeat || isprint(v[i])==0); } }![]()

Rispondi quotando