Могу помочь за умеренное вознаграждение.
И вообще, если кому нужны лабы, курсовые и т.п. и не хочется ждать, что может быть кто-то поможет просто так, - обращайтесь
Я так понял, тебе все-таки хочется все сразу в файле хранить, используя в качестве буфера массив, а на условие произвольного количества книг наплевать :) Ну ладно, можно и так. Тогда создавай массив структур, примерно такой:
struct Book
{
char author[N];
int year;
}Books[M];
Тогда...
Мдам, ну что тебе сказать... Конечно не получается. Начать можно с того, что книги не в файл прямо кидать нужно, а все-таки создать динамический список.
Как это делается? Рекомендую не полениться и обратиться к литературе, у меня старые лабы не сохранились
Если ты сумел написать добавление книги, удивительно что мешает тебе удалять ее. Напомню, динамические данные удаляются с помощью оператора delete. При этом не забудь связать предшествующий и последующий элементы списка.
Для сортировки даже есть готовая функция qsort(...), реализующая алгоритм...
Создаешь класс, в котором описываешь динамический список структур для книг, пишешь методы для добавлениея, удаления, поиска, сортировки и чего там еще надо... Собственно в чем вопрос?
Прямо и обращаешся, например
datatype data,*addr;
addr=(datatype *)x;//x - адрес твоей ячейки памяти
data=*addr;// - в data получили данные по адресу х типа datatype