Заполнить массив словами вводом с консоли - C (СИ)

Формулировка задачи:

Задача тривиальна - заполнить массив словами вводом из консоли. Как я понимаю такой способ не проканает. Заранее спасибо
char *mmm[4];
 
int i;
puts("Vvedite slova \n");
for (i=1; i<5; i++)
{
scanf("%s",mmm);
}
Укажите, где основная ошибка (не пинайте сильно, начал учить Си после Delphi) и по возможности напишите корректный код Заранее спасибо!

Код к задаче: «Заполнить массив словами вводом с консоли - C (СИ)»

textual
#define MAXLEN 256
...
char *mmm[4];
int i;
 
puts("Vvedite slova \n");
for (i=1; i<4; i++)
{
    mmm[i] = malloc(MAXLEN);
    scanf("%s", mmm[i]);
}
...
for (i=1; i<4; i++)
    free(mmm[i]);

9   голосов, оценка 4.222 из 5


СОХРАНИТЬ ССЫЛКУ