Weierstrass ha scritto:
Gli errori sono diversi
1) usa i tag CODE (pulsante < / >), altrimenti parte il corsivo e non si capisce nulla
2) leggi le risposte nei thread precedenti. Ti hanno postato un esempio che a quanto pare non hai letto
3) gli argomenti di base è meglio studiarli prima sui libri. Un puntatore (char *) è un oggetto di dimensione 4 o 8 byte che indica una posizione in memoria, non puoi certo memorizzarci dentro una stringa. Quindi o allochi i byte che ti servono nelle stringhe come ti hanno fatto vedere con "char parole[4][20]", oppure usi la malloc() se vuoi fare un array di puntatori
per risolvere l'esercizio usando la malloc cosa dovrei fare?
#include<stdio.h>
#include<string.h>
void stampa(char *array[], int c);
int main(void){
int quanti;
int i=0;
printf("Quante parole vuoi inserire?\n");
scanf("%d",&quanti);
char *array[quanti];
for(i; i<quanti; i++){
printf("Inserisci parola:\n");
scanf("%s",array);
scanf("%*[^\n]");
scanf("%*c");
}
stampa(array,quanti);
}
void stampa(char *array[],int c){
for(int i=0; i<c; i++){
printf("%s\n",array);
}
}