#include #include //Entier représentants les dates actuelles et d'anniversaires //au format JJ/MM/AAAA v int calculateAge(int dc, int mc, int yc, int db, int mb, int yb) { int age = yc - yb - 1; //On calcule l'age minimum que quelqu'un peut avoir if (mc > mb) { //Si le mois est supérieur au mois de naissance, on rajoute 1 an age++; } else if (mc == mb && dc >= db) { //Idem si le mois est le même et le jour supérieur. age++; } return age; } int main(int argc, char * argv[]) { int day_c, month_c, year_c, day_b, month_b, year_b; printf("Indiquez la date d'aujourd'hui au format JJ/MM/AAAA : "); int result = scanf("%d/%d/%d", &day_c, &month_c, &year_c); if (result < 1) { printf("Format incorrect.\n"); return EXIT_FAILURE; } result = 0; printf("Indiquez votre date de naissance au format JJ/MM/AAAA : "); result = scanf("%d/%d/%d", &day_b, &month_b, &year_b); if (result < 1) { printf("Format incorrect.\n"); return EXIT_FAILURE; } int age = calculateAge(day_c, month_c, year_c, day_b, month_b, year_b); printf("Vous avez %d ans.\n", age); return EXIT_SUCCESS; }