Golang实例 - 检查年份是否为闰年的程序

466 阅读1分钟

在这篇博文中,我们将写一个程序来检查一个给定的年份是否是闰年

闰年是指符合以下条件的年份

  1. 如果该年能被4整除,检查步骤2,否则转到步骤5
  2. 如果该年能被100整除,检查第3步,否则转到第4步
  3. 如果该年可被400整除,请检查步骤4,否则转到步骤5
  4. 那么这一年是学习年,有366天。
  5. 这不是闰年,闰年有365天。

检查给定年份是否为闰年的程序示例

在go语言中使用了以下功能

以下是示例代码

package main  
  
import (  
 "fmt"  
)  
  
func isLeapYear(year int) bool {  
 leapFlag := false  
 if year%4 == 0 {  
  if year%100 == 0 {  
   if year%400 == 0 {  
    leapFlag = true  
   } else {  
    leapFlag = false  
   }  
  } else {  
   leapFlag = true  
  }  
 } else {  
  leapFlag = false  
 }  
 return leapFlag  
}  
func main() {  
 bool := isLeapYear(1980)  
 bool1 := isLeapYear(2001)  
 fmt.Println(" 1980 leap year?:", bool)  
 fmt.Println(" 2001 leap year?:", bool1)  
  
}  

上述程序经编译后的输出为

1980 leap year?: true  
2001 leap year?: false  

在上面的程序中,创建了一个函数isLeapYear,它接受int类型的参数年份,如果是闰年则返回true,否则返回false--如果不是闰年
因为1980年能被4整除而不能被100整除,所以1980年是闰年
但是2011年不能被4整除,所以2001年不是闰年
最后,用Println()函数将布尔值显示到控制台