Обработка текстовых и файловых данных

Описание
язык программирования Си.
Первое задание – на обработку файлов данных, второе – на обработку текстовых
данных. В результате должно получиться два независимых исполняемых модуля.
Задание 1. Написать программу по обработке файла, состоящего из структур,
содержащих следующую информацию о студентах: фамилия и инициалы; год рождения; номер
группы; оценки за семестр: физика, математика, информатика, химия; средний балл.
Организовать ввод исходных данных, средний балл рассчитать программно по введенным
оценкам. Записать в файл анкетные данные студентов-отличников из интересующей вас
группы. В программе реализовать следующие действия по обработке файла: создание;
просмотр; добавление нового элемента; удаление (редактирование). Память под массивы
выделять динамически. Результаты – в отдельных файлах, распечатка которых должна
производиться в консоль.
Задание 2. Составить программу, которая вводит строку с клавиатуры; признак
окончания ввода – нажатие клавиши Enter, шифрует введенный текст в файл на диске по
определенному алгоритму. Программа должна считывать эту строку из файла и далее
дешифровать текст, выводя его на экран и записывая в выходной файл. В программе
реализовать следующие действия: ввод с клавиатуры исходной строки текста и запись в файл
a.txt; считывание строки из файла и вывод на экран; шифровка текста; расшифровка.
Алгоритм шифровки: Первая буква «а» заменяется на 11-ю, вторая «b» – на 12-ю, третья
– на 13-ю, ... , последняя «z» – на 10-ю. Результаты – в отдельных текстовых файлах. Алгоритм
шифровки – в отдельной функции, передачу параметров осуществлять по указателям, память
выделять динамически.