В массиве структур каждый элемент имеет признак «занят/свободен». Это позволяет при удалении элемента не перемещать в массиве элементы, а только изменять значение признака. Операции:
- создание массива структур из данных текстового файла;
- изменение значения элемента с заданным (логическим) номером (логический номер структуры может не совпадать со значением индекса элемента, так как индекс учитывает все элементы массива, в том числе и свободные);
- получение значения элемента матрицы с заданным логическим номером;
- удаление элемента с заданным логическим номером;
- добавление элемента в массив (элемент добавляется в конец массива после последнего занятого элемента, а если последний занятый элемент является последним элементом массива, то перед добавлением нового элемента должно выполняться сжатие массива: исключение всех свободных элементов);
- получение текущего количества занятых элементов;
- получение текущего количества строк;
- вывод массива структур на экран;
- запись занятых элементов структур в текстовый файл.
Поля структуры:
- номер телефона
- ФИО
- адрес
В демонстрационной программе предусмотреть считывание массива структур в начале работы программы из текстового файла и запись массива в файл перед завершением работы программы.