• 判断某一天是一年的第几天


    1.键盘录入年月日,并判断是否准确,年大于0,月大于0 小于=12  ,日大于0 小于等于31

    2.判断是不是瑞年,如果是瑞年判断2月是不是小于等于29,还有其他小月是否小于等于30  ;如果不是瑞年判断2月是不是小于等于28.否则提示输入错误

    3.判断瑞年和小月的日期,累加求和即可

    package com.test;

    import java.util.Scanner;

    public class Days {
    public static void main(String[] args) {
    for (;true;) {
    boolean b =false;
    int sum=0;int days=0;
    Scanner sc = new Scanner(System.in);
    System.out.println("請輸入年份");
    int year=sc.nextInt();
    if (year<=0) {
    System.out.println("您输入的年份有误");
    break;
    }
    System.out.println("请输入月份");
    int month=sc.nextInt();
    if (month>12||month<0) {
    System.out.println("您输入的月份有误");
    break;
    }
    System.out.println("请输入日期");
    int day = sc.nextInt();
    if (day>31||day<0) {
    System.out.println("您输入的日期有误");
    break;
    }
    //判断是不是瑞年
    if ((year%4==0&&year%100!=0)||year%400==0) {
    b=true;
    }
    if ((b&&month==2&&day>29)||((month==4||month==6||month==9||month==11)&&day>30)) {
    System.out.println("日期错误");
    break;
    }else if (month==2&&day>28) {
    System.out.println("日期错误");
    break;
    }
    //判断闰年和小月的日期
    for (int i = 1; i < month; i++) {//计算天数
    switch (i) {
    case 1:
    case 3:
    case 5:
    case 7:
    case 8:
    case 10:
    case 12:
    days=31;
    break;
    case 4:
    case 6:
    case 9:
    case 11:
    days=30;
    break;
    case 2:
    if (b) {
    days=29;
    }else {
    days=28;
    }
    break;
    default:
    break;
    }
    sum+=days;
    }
    if (b) {
    System.out.println("这天是地"+(sum+day)+"天");
    }else {
    System.out.println("这天是地"+(sum+day)+"天");

    }


    }
    }
    }

  • 相关阅读:
    android-----JNI学习 helloworld
    android布局之线性布局
    Hadoop最基本的wordcount(统计词频)
    有些错误就只因没有全局观
    Eclipse如何生成带有自定tag的Java Doc
    编程之美----高效率地安排见面会----贪心策略
    Servlet Filter
    【解决方法】VS 丢失模板
    你不是一个人在战斗——软件项目团队模型
    [Oracle] Data Pump 详细使用教程(4)- network_link
  • 原文地址:https://www.cnblogs.com/hikoukay/p/7140969.html
Copyright © 2020-2023  润新知