Édition pédagogique en français
Année bissextile en C
Appliquez la règle grégorienne de divisibilité par 4, 100 et 400.

Une année grégorienne est bissextile si elle est divisible par 400, ou divisible par 4 mais pas par 100. L’exception des siècles interdit de tester seulement les multiples de quatre.
Utilisez le reste % et des parenthèses pour rendre la condition explicite. Validez la lecture et définissez la plage d’années acceptée.
Testez 2000, 1900, 2024 et 2023 : ils couvrent les exceptions de 400 et 100, un cas bissextile ordinaire et une année commune. Cette règle ne s’applique pas sans précision à tous les calendriers.
Code source
#include <stdio.h>
#include <stdbool.h>
bool is_leap_year(int year) {
// Condition: (year % 400 == 0) || (year % 4 == 0 && year % 100 != 0)
if (year % 400 == 0) {
return true;
} else if (year % 100 == 0) {
return false;
} else if (year % 4 == 0) {
return true;
}
return false;
}
int main(void) {
int test_years[] = {1900, 2000, 2020, 2024, 2025, 2028, 2100};
int count = sizeof(test_years) / sizeof(test_years[0]);
printf("--- Leap Year Validation Summary ---\n");
for (int i = 0; i < count; i++) {
int yr = test_years[i];
printf("Year %d: %s\n", yr, is_leap_year(yr) ? "LEAP YEAR (366 days)" : "Common Year (365 days)");
}
return 0;
}Ouvrir dans le compilateurRésultat attendu
--- Leap Year Validation Summary --- Year 1900: Common Year (365 days) Year 2000: LEAP YEAR (366 days) Year 2020: LEAP YEAR (366 days) Year 2024: LEAP YEAR (366 days) Year 2025: Common Year (365 days) Year 2028: LEAP YEAR (366 days) Year 2100: Common Year (365 days)
Questions fréquentes
Pourquoi le code et certains résultats restent-ils en anglais ?
Les mots-clés C, les identifiants, les commentaires du programme et les sorties attendues restent ceux de la version originale pour conserver un code exécutable et des tests cohérents. Les explications et les consignes sont traduites.