Упорядочить записи по датам рождения - C (СИ)
Формулировка задачи:
Помогите дописать программку)Написать программу которая выполняет следующие действия:1)Ввод данных с клавиатуры;2)вывод информации на екран,фамилия которого вводится с клавитауры;3)упорядочить записи по датах рождения.Вот 3) не знаю как сделать(((Помогите пожайлуста!!!
Решение задачи: «Упорядочить записи по датам рождения»
textual
Листинг программы
#include <stdio.h>
#include <locale.h>
#include <string.h>
struct znak
{
int day, mounth, year;
char surname[20], name[20], zodiak[10];
} info[3];
char temp_surname[2];
int main()
{
setlocale(LC_ALL,"Russian");
for(int i = 0; i < 3; i++)
{
printf("%d. Введите фамилию, имя, знак зодиака, день рождения, месяц и год:\n> ", i + 1);
scanf("%s %s %s %d %d %d", &info[i].surname, &info[i].name, &info[i].zodiak ,
&info[i].day, &info[i].mounth, &info[i].year);
}
printf("Поиск людей по фамилии.\n");
for(int i = 0; i < 3; i++)
{
printf("Введите фамилию:\n> ");
scanf("%s", &temp_surname);
if(!strcmp(temp_surname, info[i].surname))
{
printf("%d.) %s %s %s %d.%d.%d\n", i + 1, info[i].surname, info[i].name, info[i].zodiak, info[i].day,
info[i].mounth, info[i].year);
}
else
printf("Данные не найдены.\n");
}
return 0;
}
Объяснение кода листинга программы
В этом коде:
- Объявлены структура данных
znakи массив этой структурыinfoразмером 3. - В структуре
znakесть поля для хранения дня, месяца и года рождения, а также для хранения фамилии, имени и знака зодиака. - В функции main() устанавливается русскоязычная локаль.
- Происходит два цикла ввода данных:
- В первом цикле пользователь вводит данные о трех людях.
- Во втором цикле пользователь может ввести фамилию для поиска.
- Для поиска используется функция strcmp() из библиотеки string.h, которая сравнивает строки.
- Если фамилия, введенная пользователем, совпадает с фамилией кого-то из людей в массиве, то выводится информация об этом человеке.
- Если фамилия не совпадает ни с одной из фамилий в массиве, выводится сообщение
Данные не найдены. - Код завершается возвратом 0 из функции main(), что означает успешное выполнение программы.