解题思路
- 将每个月的天数按序存到数组中,闰年的话,修改数组中对应的值
- 通过循环取数组中的值累加就行了
package main import( "fmt" ) func main(){ var year,months,day int if n,_ := fmt.Scan(&year,&months,&day); n == 0{ return } daysArr := []int{31,28,31,30,31,30,31,31,30,31,30,31} if leapYear(year){ daysArr[1] = 29 } res := 0 for i:=0;i< months - 1 ;i++{ res += daysArr[i] } fmt.Println(res + day) } func leapYear(year int)bool{ // 四年一闰,百年不闰,四百年在闰 if year%4 == 0 && year%100 != 0 || year%400 == 0{ return true }else{ return false } }