package com.javase;
import java.util.Scanner;/*** 输入年月,将输出出日历表(从1900.1.1开始计算总天数)*/
public class Calendar {public static void main(String[] args) {while (true){Scanner in=new Scanner(System.in);System.out.println("请输入年份:");int year=in.nextInt();System.out.println("请输入月份:");int month=in.nextInt();generateCalendar(month,year);}}/*** 为用户提供一个API接口* @param month* @param year*/public static void generateCalendar(int month,int year){int sum=0;sum=countTotalDays(sum,year,month);printCalendar(sum,year,month);}/*** 计算从1900.1.1到输入月份一共多少天* @param sum* @param year* @param month* @return*/public static int countTotalDays(int sum,int year,int month){/*** 按年计算1900.1.1到输入年份的1.1一共有多少天(分闰年和平年)*/for(int i=1900;i<year;i++) {if(isR(i)) {sum+=366;}else {sum+=365;}}System.out.println(sum);/*** 按月计算今年的1.1号到输入月份的1号一共有多少天* 二月分闰年(29)和平年(28),大月31天,小月30天*/for(int j=1;j<month;j++) {if(j==2) {if(isR(year)){sum+=29;}else {sum+=28;}}else {if(j==4||j==6||j==9||j==11){sum+=30;}else {sum+=31;}}}sum+=1;System.out.println(sum);return sum;}/*** 获取输入月份具体多少天* @param year* @param month* @return*/public static int getMonthDays(int year,int month){//获取30天月份switch (month) {case 4:case 6:case 9:case 11:return 30;//获取2月月份天数,调用上面方法,若满足条件则返回29天,否则返回28天case 2:if(isR(year)){return 29;}else{return 28;}//若都不满足条件,则返回31天default:return 31;}}/*** 判断是否闰年* @param year* @return*/public static boolean isR(int year){//判断是否为闰年if(year%4==0&&year%100!=0||year%400==0){//是闰年return true;}else{//不是闰年return false;}}/*** 输出日历* @param sum* @param year* @param month*/public  static void printCalendar(int sum,int year,int month){int wekday=sum%7;System.out.println("SUN\tMON\tTUE\tWED\tTHU\tFRI\tSAT");for(int i=1;i<=wekday;i++){System.out.print("\t");}int monthDays=getMonthDays(year,month);for(int i=1;i<=monthDays;i++) {if(sum%7==6) {System.out.print(i+"\n");}else {System.out.print(i+"\t");}sum++;}System.out.println("\n"+"************************************"+"\n");}}

输入年月 输出日历表相关推荐

  1. Java日历的制作(输入年月输出日历表)

    package com.unit2.test; import java.util.Scanner; /** 输入年月,将输出出日历表(从1900.1.1开始计算总天数)*/ public class ...

  2. java输入年月输出日历_java 输入年月,获取日历表

    /* 做日历作业: 输入一个时间如: 2016-11 就显示2016年11月的日历显示 */ import java.util.*; class calendar { public static vo ...

  3. java输入年月输出日历_java输入年份打印该年份的年历

    import java.util.Scanner; public class rili { public static void main(String[] args ){ System.out.pr ...

  4. C语言switch输入月份输出季节,c语言输入年月,输出该月有几天

    先判断年,再确定二月天数,之后输出任意年,对应任意月的天数 #include int main() { int y,m,Month_day[12]={0}; printf("input ye ...

  5. java输入年月输出日历_12月营销热点日历 | 2020年创意冲刺倒计时!

    前不久还沉浸在双十一剁手的喜(mang)悦(lu)中,马上又要被2020余额不足的闹钟叫醒,KPI的紧急呼叫,创意DDL加急.12月的创意攻略,小编全都给你整理好了,请收下! 12月营销日历 营销关键 ...

  6. C语言switch输入月份输出季节,输入年月,输出月份有几天(分别用了if——else和switch)...

    首先是switch做的 class Program { static void Main(string[] args) {/* 题目要求:请用户输入年份,输入月份,输出该月的天数. 思路:一年中月份的 ...

  7. java输出输入的日期_Java编写的日历,输入年月,输出这个月的日期与星期

    import java.util.Scanner; public class rili { public static void main(String[] args) { for (int g = ...

  8. php双月日历代码,PHP输出日历表代码实例

    搜索热词 <PHP实例:PHP输出日历表代码实例>要点: 本文介绍了PHP实例:PHP输出日历表代码实例,希望对您有用.如果有疑问,可以联系我们. 月历表 $MONTH = array(& ...

  9. Linux shell 学习笔记(11)— 理解输入和输出(标准输入、输出、错误以及临时重定向和永久重定向)

    1. 理解输入和输出 1.1 标准文件描述符 Linux 系统将每个对象当作文件处理.这包括输入和输出进程.Linux 用文件描述符(file descriptor)来标识每个文件对象.文件描述符是一 ...

最新文章

  1. 【J2SE】java概述
  2. 【 C 】作为函数参数的多维数组
  3. apache 修改最大连接数
  4. Android数据库新王者-Realm入门教程
  5. 2018美团笔试字符串问题
  6. 案例:返回固定页面的http服务器
  7. 几种常见的集成触发器(D、T、JK)
  8. c语言注释部分两侧的分界符号分别是,c语言中界定注释的符号分别是什么?
  9. python编程购物车_python编写购物车新写法
  10. 设计模式学习笔记--Flyweight享元模式
  11. Linux下Shell 备份脚本集合
  12. Python之路--Django--auth认证系统
  13. 手机输入法并一不一定要横向充满
  14. 上周热点回顾(11.27-12.3)
  15. 算法导论 中+英 PDF分享 附书单
  16. Jad批量反编译class
  17. bat 增加命令行之间的等待时间
  18. MySQL 日期计算
  19. python的六种基本数据类型_Python基本数据类型
  20. 红孩儿编辑器的模块设计16

热门文章

  1. Java+JSP+Mysql+Tomcat实现Web图书管理系统
  2. acm——男人的承诺
  3. 解决Ubuntu和Windows不能相互复制粘贴的问题
  4. Unity报错但VS(代码编辑器)不报错,Unity提示需要继承自MonoBehavior,Unity提示缺少命名空间或者DLL,Unity点击UI或者GameObject无法在Hierarchy锁定
  5. Ubuntu系统下C语言编译以及Makefile编译C语言程序
  6. 线性代数导论23——微分方程和exp(At)
  7. 辩证法三大规律和五大范畴
  8. 教你如何用免费软件来发布活动直播
  9. Word排版之段落样式+如何创建一个三线表外观的表格样式
  10. Android GPS 简介