GoLang练习实例100之004----判断日期是这一年的第几天

package main

import (
	"fmt"
)

var(
	input_Data int
	result  int
	year_data int
	month_data int
	day_data int
	sum int
)

//题目:输入某年某月某日,判断这一天是这一年的第几天?

func get_Input(input_Type string) (int,error) {
	switch input_Type {
	case "year":
		fmt.Println("输入年份: ")
		fmt.Scanln(&input_Data)
		if input_Data <1 {
			fmt.Println("年份输入错误,请重新输入!")
			break
		}
		result = input_Data
	case "month":
		months := []int{0,31,59,90,120,151,181,212,243,273,304,334}
		fmt.Println("输入月份:")
		fmt.Scanln(&input_Data)
		if (input_Data <= 12) && (input_Data<0) {
			fmt.Println("月份输入错误,请重新输入!")
			break
		}
		result = months[input_Data-1]
	case "day":
		fmt.Println("输入日期:")
		fmt.Scanln(&input_Data)
		if (input_Data <0) && (input_Data>31) {
			fmt.Println("日期输入错误,请重新输入!")
			break
		}
		result = input_Data
	default:
		return 0,fmt.Errorf("输入参数非法:%s",input_Type)
	}
	return result,nil
}

func main() {
	year_data,_ = get_Input("year")
	month_data,_ = get_Input("month")
	day_data,_ = get_Input("day")

	sum += day_data+ month_data
	leap := 0
	if (year_data % 400 == 0) || ((year_data % 4 == 0) && (year_data % 100 != 0)){
		leap = 1
	}
	if (leap == 1) && (month_data > 2) {
		sum += 1
	}
	fmt.Printf("该日期为第%s天",sum)
}

 

转载于:https://my.oschina.net/zhangzhe/blog/1648210

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值