网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
05月30日漏签0天
杰普吧 关注:522贴子:5,645
  • 看贴

  • 图片

  • 吧主推荐

  • 游戏

  • 0回复贴,共1页
<<返回杰普吧
>0< 加载中...

JAVA万年历

  • 取消只看楼主
  • 收藏

  • 回复
  • eywertter123
  • 初级粉丝
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
import java.util.Scanner;
public class PrintCalendar {
/**
   * @param args
   */
public static void main(String[] args) {
   System.out.println("******************欢 迎 使 用 万 年 历******************");
   Scanner input = new Scanner(System.in);
   System.out.print("
请选择年份: ");
   int year = input.nextInt();
   System.out.print("
请选择月份: ");
   int month = input.nextInt();
   System.out.println();
   int days = 0; // 存储当月的天数
   boolean isRn;
   /* 判断是否是闰年 */
   if (year % 4 == 0 && !(year % 100 == 0) || year % 400 == 0) { // 判断是否为闰年
    isRn = true; // 闰年
   } else {
    isRn = false;// 平年
   }
   /* 计算输入的年份之前的天数 */
   int totalDays = 0;
   for (int i = 1900; i < year; i++) {
    /* 判断闰年或平年,并进行天数累加 */
    if (i % 4 == 0 && !(i % 100 == 0) || i % 400 == 0) { // 判断是否为闰年
     totalDays = totalDays + 366; // 闰年366天
    } else {
     totalDays = totalDays + 365; // 平年365天
    }
   }
   /* 计算输入月份之前的天数 */
   int beforeDays = 0;
   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 2:
     if (isRn) {
      days = 29;
     } else {
      days = 28;
     }
     break;
      default:
     days = 30;
     break;
    }
    if (i < month) {
     beforeDays = beforeDays + days;
    }
   }
   totalDays = totalDays + beforeDays; // 距离1900年1月1日的天数
   /* 计算星期几 */
   int firstDayOfMonth; // 存储当月第一天是星期几:星期日为0,星期一~星期六为1~6
   int temp = 1 + totalDays % 7; // 从1900年1月1日推算
   if (temp == 7) { // 求当月第一天
    firstDayOfMonth = 0; // 周日
   } else {
    firstDayOfMonth = temp;
   }
   /* 输出日历 */
   System.out.println("星期日 星期一 星期二 星期三 星期四 星期五 星期六");
   for (int nullNo = 0; nullNo < firstDayOfMonth; nullNo++) {
    System.out.print(" "); // 输出空格
   }
   for (int i = 1; i <= days; i++) {
    System.out.print(i + " ");
    if ((totalDays + i - 1) % 7 == 5) { // 如果当天为周六,输出换行
     System.out.println();
    }
   }
}
}
   


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 0回复贴,共1页
<<返回杰普吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示