无论哪一年我总是说这是always年

最佳答案

这种情况暂时忽略了程序的所有其他问题。

else if ((yyyy % 4) || (yyyy % 100) && (yyyy % 400)) {
  printf( "%d is a leap year", yyyy); }


...适用于任何不能被4整除或不能被100和400整除的数字。您真正想要的是

else if ((!(yyyy % 4) && (yyyy % 100)) || !(yyyy % 400)) {


因为英语中的the年规则是


年是4的倍数
而不是100的倍数
除非它也是400的倍数。

关于c - 不管我放哪一年,我的程序总是告诉我its年,即使不是,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57928206/

10-13 08:26