Buonasera, devo svolgere un semplice esercizio di acquisizione e visualizzazione di stringhe utilizzando printf e scanf, ma non riesco a farlo funzionare. Potreste gentilmente indicarmi cosa ho sbagliato nel mio codice? Premetto di essere alle prime armi con la programmazione in generale.
Vi ringrazio anticipatamente per eventuali risposte.
codice:#include <stdio.h> #include <stdlib.h> #include <string.h> #define D 21 int main() { int N, i; char stringa[N][D]; const char* s; printf("Inserisci numero stringhe: "); scanf("%d", &N); while ((N<1) || (N>99)) {printf("\nNumero non consentito! Reinserire numero stringhe: "); scanf ("%d", &N);} printf("\n\n"); for(i=0;i<N;i++) {printf("Inserisci stringa %d: ", i+1); scanf("%s", s); if (strlen(s)==0) { printf("Vuota - ripeti\n"); i--;} else {if(strlen(s)>D) {printf("Troppo lunga! Max %d caratteri\n", D-1) ; i--;} else {strcpy(stringa[i], s);}} } printf("\n\nLe stringhe inserite sono: \n"); for(i=0;i<N;i++) {printf("Stringa %d = %s\n", i+1, stringa[i]);} return 0; }

 
			
			 
					
					
					
						 Rispondi quotando
  Rispondi quotando