Определить, кто из двух человек старше - C (СИ)
Формулировка задачи:
Известны год, номер месяца и день рождения каждого из двух человек. Определить, кто из них старший.
Решение задачи: «Определить, кто из двух человек старше»
textual
Листинг программы
#include <stdio.h>
#include <string.h>
typedef struct {
char name[32];
int y, m, d;
} man;
void man_set(man* p, const char* name, int d, int m, int y){
strcpy(p->name, name);
p->y = y;
p->m = m;
p->d = d;
}
man* man_max(man* a, man* b){
int n1 = a->y*10000 + a->m*100 + a->d;
int n2 = b->y*10000 + b->m*100 + b->d;
return (n1 < n2) ? a : b;
}
int main(void){
man a, b, *p;
man_set(&a, "Bill Jonson", 20, 3, 2005);
man_set(&b, "Vasy Ivanov", 9, 10, 2000);
p = man_max(&a, &b);
printf("name: %s\ndate: %02d.%02d.%d\n", p->name, p->d, p->m, p->y);
return 0;
}