zoukankan      html  css  js  c++  java
  • java 输入年月,获取日历表

    /*
    做日历作业:
           输入一个时间如: 2016-11
           就显示2016年11月的日历显示
    */
    
    import java.util.*;
    
    class calendar {
        public static void main(String[] args){
            
            System.out.print("请选择年份(大于1990年):");
            Scanner input = new Scanner(System.in);
            int year = input.nextInt();
            System.out.print("请选择该年的月份:");
            int month = input.nextInt();
            // 先判断year是否是闰年
            boolean Renyear;
            if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
                System.out.println(year + "是闰年");
                Renyear = true;
            } else {
                System.out.println(year + "是平年");
                Renyear = false;
            }
            //记录当月的天数
            int day = 0;
            switch (month){
                case 1:
                    day = 31;
                    break;
                case 3:
                    day = 31;
                    break;
                case 4:
                    day = 30;
                    break;
                case 5:
                    day = 31;
                    break;
                case 6:
                    day = 30;
                    break;
                case 7:
                    day = 31;
                    break;
                case 8:
                    day = 31;
                    break;
                case 9:
                    day = 30;
                    break;
                case 10:
                    day = 31;
                    break;
                case 11:
                    day = 30;
                    break;
                case 12:
                    day = 31;
                    break;
                default:
                    if (Renyear) {
                        day = 29;
                    } else {
                        day = 28;
                    }
                    break;
            }
            System.out.println(year + "年" + month + "月" + "有" + day + "天" + "	");
            System.out.println(month + "月份的日历如下:");
            // 从1990年到指定日期的天数,1990年1月1日为星期一。
            int sum = 0;
            for(int i = 1990;i < year; i++) {
                // 判断是否是闰年
                if (i % 4 == 0 && i % 100 != 0 || i % 400 == 0) {
                    sum = sum + 366;
                } else {
                    sum = sum + 365;
                }
            }
            // 统计月份的天数
            for (int i = 1; i < month; i++) {
                
                if (i == 1 || i == 3 || i == 5 || i == 7 || i == 8 || i == 10 || i == 12) { // 大月
                    sum = sum + 31;
    
                } else if (i == 4 || i == 6 || i == 9 || i == 11){  // 小月
                    sum = sum + 30;
                } else {
                     // 二月
                    if (Renyear) {
                        sum = sum + 29;
                    } else {
                        sum = sum + 28;
                    }
                }   
            }
         
            int blank = sum % 7 + 1;//blank开始输出的空格数 +1是从星期天开始;
            System.out.println("星期天	星期一	星期二	星期三	星期四	星期五	星期六");
             
            int temp = 1;
            for (int i = 0; i < blank; i++) {
                System.out.print("	");
                temp++;
            }
            if (temp > 7){
                System.out.println("");
                temp = 1;
            }
            for (int i = 1; i <= day; i++) {
                if (temp % 7 == 0){
                    System.out.print(i + "
    ");//控制换行
                    temp = 1;
                }
                else{
                    System.out.print(i + "	");
                    temp++;
                }
            }
             
        }
    }
  • 相关阅读:
    【BZOJ1067】【SCOI2007】降雨量(线段树)
    【BZOJ3489】A simple rmq problem(树套树)
    【BZOJ1146】【CTSC2008】网络管理
    【BZOJ3236】【Ahoi2013】作业
    计算几何的一些板
    【BZOJ3173】【Tjoi2013】最长上升子序列(树状数组)
    解决phpmyadmin导入长脚本超时
    make报错make: *** [sapi/cli/php] Error 1
    wampserver配置redis在phpinfo()里面找不到
    阿里云服务器安装Apache环境外网不能访问
  • 原文地址:https://www.cnblogs.com/Liang-Haishan216/p/6112350.html
Copyright © 2011-2022 走看看