java 万年历_非常实用的java万年历制作方法
完成万年历的制作需要用到数组、循环等知识。
编程计算输入的月份距离1900年1月1日的天数,求出当前月之前的总天数(不包含当前输入月分的天数,)
编程计算输入月份的第一天是星期几,(公式:星期几=1+天数差%7)。
import java.util.Scanner;
public class Calendar{
public static void main(String[] args){
int year;
int month;
int totaldays=0;
Scanner sc=new Scanner(System.in);
System.out.println("请输入年");
year=sc.nextInt();
System.out.println("请输入月");
month=sc.nextInt();
//计算年的总天数
for(int i=1900;i
if((i%400==0)||(i%4==0&&i%100!=0)){
totaldays+=366;
}else{
totaldays+=365;
}
}
//距离1900年1月1好的总天数
totaldays+=monthdays(month,year);
//System.out.println(totaldays);
System.out.println("-------------"+year+"年"+month+"月日历为---------------");
//开头
System.out.println("星期日\t星期一\t星期二\t星期三\t星期四\t星期五\t星期六\t");
//该月第一天是星期几,星期几前面就空几格
int x=1+totaldays%7;
if(x==7){
x=0;
}
for(int i=0;i
System.out.print(" \t");
}
int days=monthday(month,year);
int i=1;
while(i<=days){
System.out.print(i+" \t");
if((i+x)%7==0){
System.out.println();
}
i++;
}
}
//月份总天数
public static int monthdays(int month,int year){
int totaldays=0;
for(int i=1;i
totaldays+=monthday(i,year);
}
return totaldays;
}
//某月天数
public static int monthday(int month,int year){
if((year%400==0)||(year%4==0&&year%100!=0)){
int[] arr={0,31,29,31,30,31,30,31,31,30,31,30,31};
return arr[month];
}else{
int[] arr={0,31,28,31,30,31,30,31,31,30,31,30,31};
return arr[month];
}
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
java 万年历_非常实用的java万年历制作方法相关推荐
- java内核_测量时间:从Java到内核再到
java内核 问题陈述 当您深入研究时,即使是最基本的问题也会变得很有趣. 今天,我想深入研究一下Java时间. 我们将从Java API的最基础知识开始,然后逐步降低堆栈:通过OpenJDK源代码g ...
- java风控_【A0538】[java视频教程]金融信贷风控的机器学习实战视频教程 it教程
Java视频教程名称:金融信贷风控的机器学习实战视频教程 java自学 风控视频教程 it教程 7 E" b1 z7 `/ _& G百度网盘下载链接:8 }, g4 o5 ...
- 我的世界java路径_我的世界java路径在哪 路径有误怎么设置
我的世界的各个版本中java都是十分重要的东西,许多玩家都会遇到Java路径有误的问题,并且不知道该如何解决,其实Java的路径这个东西在每个人的电脑中都是不太一样的,一般以你安装时的位置为准,在这里 ...
- 如何创建第一个java程序_创建第一个java程序
开发环境:ubuntu 10.04 + eclipse 方法一:打开eclipse编译器,选择 File->New->Java project,输入工程名称,点击finish,在工程目录中 ...
- 常用的java虚拟机_带你了解 JAVA虚拟机 面试必备
Java运行时数据区: Java虚拟机在执行Java程序的过程中会将其管理的内存划分为若干个不同的数据区域,这些区域有各自的用途.创建和销毁的时间,有些区域随虚拟机进程的启动而存在,有 些区域则是依赖 ...
- vs java调试_基于VSCode的Java编程语言的构建调试环境搭建指南(作业三)
1.Java编译环境的搭建(CodeRunner) CodeRunner的强大之处在于它支持许多语言,只要选好语言,就直接可以写代码,即开即用的模式.时至今日,Code Runner已经有了超过400 ...
- java 精通_你真的精通Java吗?
简历和自我介绍上经常能够读到"精通Java"这样的话,有人和我说,精通Java的人太多了,精通Java已经不能算亮点.不能给自己加分了.可是事实真是这样吗? 对于语言的学习,我有一 ...
- java相册_精致小巧的java相册制作方法
本文实例为大家分享了java相册制作方法,供大家参考,具体内容如下 注: 1)html上的图片是静态指定的.当更新了新的图片时必须手工更新.所以使用Servlet读取本地images中的所有图片,动态 ...
- snmp与java集成_轻松地与Java完全集成
snmp与java集成 这里是如何不使用SQL,HQL,PHP,ASP,HTML,CSS或Javascript而是使用Vaadin的UI层和Speedment Stream ORM完全依赖Java编写 ...
最新文章
- 清华《人工智能之认知图谱》:中美高水平学者数量领跑全球
- request获取int类型的值_获取通话记录或通讯录的数量为负值
- 使用if和goto语句构造循环
- JAX-RS 2.x与Spring MVC:返回对象列表的XML表示
- snapchat注册不到_从Snapchat获得开发人员职位中学到的经验教训
- 2021当代青年婚恋状态研究报告
- 关于php的梗儿_php几个不起眼儿的小技巧
- Leetcode算法题(C语言)2
- maven Web项目添加数据源支持,包括Oracle、Mysql
- AIOps中异常检测简的单应用
- MTK modem 通话无声
- linux oracle查看服务,技术|如何查看 Linux 中所有正在运行的服务
- 金蝶服务器出纳系统无法启动,金蝶KIS专业版启用出纳系统时提示银行账号或银行名称不能为空...
- 汉字编码对照表(gb2312/Big5/GB2312)
- pc端和移动端有什么区别?
- 简单介绍 内网与外网IP地址,域名,子网掩码,网关与路由器,ping
- numpy学习:np.subtract.outer
- 防火墙阻止tftp_H3C防火墙常见问题汇总
- BlueCms v1.6 本地文件包含漏洞代码审计
- Linux常用命令——who命令
热门文章
- Longest Palindromic Substring
- halcon11用于C++的HTuple.h头文件,纯手添中文翻译!
- 【JavaScript DOM 编程艺术】 笔记
- Day11多态部分-5
- [知识图谱实战篇] 二.Json+Seaborn可视化展示电影实体
- [Python图像处理] 三.获取图像属性、兴趣ROI区域及通道处理
- MFC 基础知识:对话框背景添加图片和按钮Button添加图片
- iOS开发之ReplayKit框架学习
- 大量小文件存储提高效率要点详解
- 教小学妹学算法:十大经典排序算法深度解析