日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

输入年月 输出日历表

發(fā)布時間:2024/3/12 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 输入年月 输出日历表 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
package com.javase; import java.util.Scanner;/*** 輸入年月,將輸出出日歷表(從1900.1.1開始計算總天數(shù))*/ 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月月份天數(shù),調(diào)用上面方法,若滿足條件則返回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");}}

總結(jié)

以上是生活随笔為你收集整理的输入年月 输出日历表的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。