#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <string.h>
void flush_buffer(void);
void write_string(char string[], int n);
void clean_buf_str(char string[]);
int main(void)
{
char buffer[80] = "";
char ** pas;
int length;
printf("Сколько слов вы хотите ввести? "); flush_buffer();
printf("Теперь введите %d слов:\n", length
); pas
= (char **) malloc(length
* sizeof(char *)); for (int i = 0; i < length; i++)
{
write_string(buffer, 80);
pas
[i
] = (char *) malloc( (strlen(buffer
) + 1) * sizeof(char *)); clean_buf_str(buffer);
}
for (int j = 0; j < length; j++)
return 0;
}
void write_string(char string[], int n)
{
int i = 0;
char ch;
{
break;
else
{
string[i] = ch;
i++;
}
}
}
void flush_buffer(void)
{
continue;
}
void clean_buf_str(char string[])
{
while (*string)
{
*string = '\0';
string++;
}
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KI2luY2x1ZGUgPGN0eXBlLmg+CiNpbmNsdWRlIDxzdHJpbmcuaD4KCnZvaWQgZmx1c2hfYnVmZmVyKHZvaWQpOwp2b2lkIHdyaXRlX3N0cmluZyhjaGFyIHN0cmluZ1tdLCBpbnQgbik7CnZvaWQgY2xlYW5fYnVmX3N0cihjaGFyIHN0cmluZ1tdKTsKCmludCBtYWluKHZvaWQpCnsgCiAgY2hhciBidWZmZXJbODBdID0gIiI7CiAgY2hhciAqKiBwYXM7CiAgaW50IGxlbmd0aDsKICBwcmludGYoItCh0LrQvtC70YzQutC+INGB0LvQvtCyINCy0Ysg0YXQvtGC0LjRgtC1INCy0LLQtdGB0YLQuD8gIik7CiAgc2NhbmYoIiVkIiwgJmxlbmd0aCk7CiAgZmx1c2hfYnVmZmVyKCk7CiAgcHJpbnRmKCLQotC10L/QtdGA0Ywg0LLQstC10LTQuNGC0LUgJWQg0YHQu9C+0LI6XG4iLCBsZW5ndGgpOwogIHBhcyA9IChjaGFyICoqKSBtYWxsb2MobGVuZ3RoICogc2l6ZW9mKGNoYXIgKikpOwogIGZvciAoaW50IGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspCiAgewogICAgd3JpdGVfc3RyaW5nKGJ1ZmZlciwgODApOwogICAgcGFzW2ldID0gKGNoYXIgKikgbWFsbG9jKCAoc3RybGVuKGJ1ZmZlcikgKyAxKSAqIHNpemVvZihjaGFyICopKTsKICAgIHN0cm5jcHkocGFzW2ldLCBidWZmZXIsIDgwKTsKICAgIHByaW50ZigiJXNcbiIsIHBhc1tpXSk7CiAgICBjbGVhbl9idWZfc3RyKGJ1ZmZlcik7CiAgfQoKICBmb3IgKGludCBqID0gMDsgaiA8IGxlbmd0aDsgaisrKQogICAgZnJlZShwYXNbal0pOwoKICBmcmVlKHBhcyk7CgogIHJldHVybiAwOwp9CgoKdm9pZCB3cml0ZV9zdHJpbmcoY2hhciBzdHJpbmdbXSwgaW50IG4pCnsKICBpbnQgaSA9IDA7CiAgY2hhciBjaDsKICB3aGlsZSAoIChjaCA9IGdldGNoYXIoKSkgJiYgaSA8IG4pCiAgewogICAgaWYgKGlzc3BhY2UoY2gpIHx8IGlzcHVuY3QoY2gpKQogICAgICBicmVhazsKICAgIGVsc2UKICAgIHsKICAgICAgc3RyaW5nW2ldID0gY2g7CiAgICAgIGkrKzsKICAgIH0KICB9Cn0KCnZvaWQgZmx1c2hfYnVmZmVyKHZvaWQpCnsKICB3aGlsZSAoZ2V0Y2hhcigpICE9ICdcbicpCiAgICBjb250aW51ZTsKfQoKdm9pZCBjbGVhbl9idWZfc3RyKGNoYXIgc3RyaW5nW10pCnsKICB3aGlsZSAoKnN0cmluZykKICB7CiAgICAqc3RyaW5nID0gJ1wwJzsKICAgIHN0cmluZysrOwogIH0KfQoK