Объявить структуру Humen, включающую имя человека, фамилию и год рождения - C (СИ)
Формулировка задачи:
Объявить тип-структуру humen, включающую имя человека, фамилию и год рождения. Объявить два массива из четырёх элементов типа humen. Ввести с консоли или из файла элементы одного массива и построить на их основе другой, упорядочив эле-менты по годам рождения. Вывести результат.
Решение задачи: «Объявить структуру Humen, включающую имя человека, фамилию и год рождения»
textual
Листинг программы
#include "stdafx.h" #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <iostream> #pragma warning(disable : 4996) int main() { setlocale(LC_ALL, "Russian"); typedef char string[256];//Переименование массива char[256] в тип string string s; struct humen { char name[20]; char surname[20]; int year; }; humen per1, per2, per3, per4, per5, per6; printf("ВВЕДИТЕ ДАННЫЕ ЧЕЛОВЕКА 1:\n"); printf("Имя: "); gets(per1.name); printf("Фамилия: "); gets(per1.surname); printf("Год рождения: "); gets(s); per1.year = atoi(s); printf("\nВВЕДИТЕ ДАННЫЕ ЧЕЛОВЕКА 2:\n"); printf("Имя: "); gets(per2.name); printf("Фамилия: "); gets(per2.surname); printf("Год рождения: "); gets(s); per2.year = atoi(s); printf("\nВВЕДИТЕ ДАННЫЕ ЧЕЛОВЕКА 3:\n"); printf("Имя: "); gets(per3.name); printf("Фамилия: "); gets(per3.surname); printf("Год рождения: "); gets(s); per3.year = atoi(s); printf("\nВВЕДИТЕ ДАННЫЕ ЧЕЛОВЕКА 4:\n"); printf("Имя: "); gets(per4.name); printf("Фамилия: "); gets(per4.surname); printf("Год рождения: "); gets(s); per4.year = atoi(s); printf("\nВВЕДИТЕ ДАННЫЕ ЧЕЛОВЕКА 5:\n"); printf("Имя: "); gets(per5.name); printf("Фамилия: "); gets(per5.surname); printf("Год рождения: "); gets(s); per5.year = atoi(s); printf("\nВВЕДИТЕ ДАННЫЕ ЧЕЛОВЕКА 6:\n"); printf("Имя: "); gets(per6.name); printf("Фамилия: "); gets(per6.surname); printf("Год рождения: "); gets(s); per6.year = atoi(s); printf( "\nСобранная информация:\n"); printf("%s %s %d\n", per1.name, per1.surname, per1.year); printf("%s %s %d\n", per2.name, per2.surname, per2.year); printf("%s %s %d\n", per3.name, per3.surname, per3.year); printf("%s %s %d\n", per4.name, per4.surname, per4.year); printf("%s %s %d\n", per5.name, per5.surname, per5.year); printf("%s %s %d\n", per6.name, per6.surname, per6.year); printf("\nСписок в порядке возрастания дат:\n"); if (per1.year < per2.year < per1.year<per3.year < per1.year < per4.year < per5.year < per6.year) { printf("%s %s %d\n", per1.name, per1.surname, per1.year); if (per2.year < per3.year < per4.year < per5.year < per6.year) { printf("%s %s %d\n", per2.name, per2.surname, per2.year); printf("%s %s %d\n", per3.name, per3.surname, per3.year); } else { printf("%s %s %d\n", per3.name, per3.surname, per3.year); printf("%s %s %d\n", per2.name, per2.surname, per2.year); } } else if (per2.year<per1.year&&per2.year<per3.year) { { printf("%s %s %d\n", per2.name, per2.surname, per2.year); } if (per1.year < per3.year) { printf("%s %s %d\n", per1.name, per1.surname, per1.year); printf("%s %s %d\n", per3.name, per3.surname, per3.year); } else { printf("%s %s %d\n", per3.name, per3.surname, per3.year); printf("%s %s %d\n", per1.name, per1.surname, per1.year); } } else { { printf("%s %s %d\n", per3.name, per3.surname, per3.year); } if (per2.year<per1.year) { printf("%s %s %d\n", per2.name, per2.surname, per2.year); printf("%s %s %d\n", per1.name, per1.surname, per1.year); } else { printf("%s %s %d\n", per1.name, per1.surname, per1.year); printf("%s %s %d\n", per2.name, per2.surname, per2.year); } } getchar(); return(0); }
Объяснение кода листинга программы
В этом коде объявлена структура Humen, которая включает в себя поля name, surname и year. Затем определены пять объектов этой структуры (per1-per5), в которые пользователь вводит данные о пяти людях.
Далее, в цикле, данные из каждого объекта выводятся на экран в формате Имя Фамилия Год рождения
.
Затем, в зависимости от года рождения, объекты упорядочиваются по возрастанию года рождения, и их данные выводятся на экран в формате Имя Фамилия Год рождения
.
Возможные значения переменных:
- s - строка, содержащая год рождения, введенный пользователем.
- per1-per6 - объекты структуры Humen, содержащие данные о людях.
- name, surname, year - поля структуры Humen, содержащие имя, фамилию и год рождения человека соответственно.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д