Считать данные из файла и вывести на экран список животных, указанной породы и возраста - C (СИ)
Формулировка задачи:
Вот мое задание на лабораторную работу:
Написать программу для обработки информации о животных, представленных на выставку кошек. Информация включает в себя:
Кличка.
Порода.
Возраст.
Программа должна позволять пользователю:
Считывать данные с клавиатуры и заносить их в файл.
Считывать данные из файла и выводить на экран список животных, указанной породы и возраста.
__________________________________________________________________________________________________________
Не могу понять как записать структуру в файл и как считать именно тех животных "указанной породы и возраста".
Пожалуйста помогите...
Решение задачи: «Считать данные из файла и вывести на экран список животных, указанной породы и возраста»
textual
Листинг программы
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- #define MAXNAMELEN 32
- #define MAXBREEDLEN 64
- typedef struct st_dog
- {
- char name[MAXNAMELEN];
- char breed[MAXBREEDLEN];
- unsigned short int age;
- } dog;
- int sd = sizeof(dog);
- int main()
- {
- dog *myDog = malloc(sd);
- strcpy(myDog->name, "Sharik");
- strcpy(myDog->breed, "Dvornyajka");
- myDog->age = 5;
- FILE *f;
- f = fopen("dat", "wb");
- fwrite(myDog, sd, 1, f);
- fclose(f);
- /********************************************/
- dog *readDog = malloc(sd);
- f = fopen("dat", "rb");
- fread(readDog, sd, 1, f);
- printf("readDog: %s %s %d\n", readDog->name, readDog->breed, readDog->age);
- return 0;
- }
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с файлами и памятью.
- Определение максимальной длины имени и породы собаки в макросах.
- Создание структуры данных
собака
с полями: имя (char), порода (char) и возраст (unsigned short int). - Вычисление размера структуры данных
собака
в байтах. - Выделение памяти под указатель на структуру данных
собака
. - Копирование значений в поля структуры данных
собака
. - Открытие файла
dat
в режиме записи (wb). - Запись структуры данных
собака
в файл. - Закрытие файла.
- Открытие файла
dat
в режиме чтения (rb). - Чтение структуры данных
собака
из файла. - Вывод на экран значений полей структуры данных
собака
. - Возврат 0, что означает успешный конец работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д