Java基础10-循日历制作
2024-09-03 17:53:56
编写过程:先指定固定的年份来输出指定月份的日历
/*计算1900年1月1日到2018年11月1日一共有多少天
计算月份
对7进行取模,结果就为星期几
*/
import java.util.Scanner; public class Test1{
public static void main(String[] args){
int sum=0;
for(int year=1900;year<=2017;year++){
if(year%4==0&&year%100!=0||year%400==0){//闰年
sum=sum+366;
}else{
sum=sum+365;
}
}
for(int month=1;month<=10;month++){
if(month==2){
if(2018%4==0&&2018%100!=0||2018%400==0){
sum=sum+29;
}else{
sum=sum+28;
}
}else if(month==4||month==6||month==9||month==11){
sum=sum+30;
}else{
sum=sum+31;
}
}
sum=sum+1;
System.out.println("1900年1月1日到2018年11月1日一共有"+sum+"天"); int wekDay=sum%7;
System.out.println("2018年11月1日为星期"+sum%7); System.out.println("日\t一\t二\t三\t四\t五\t六");
for(int i=1;i<=wekDay;i++){
System.out.print("\t");
}
for(int i=1;i<=30;i++){//输出2018年11月份的日历
if(sum%7==6){
System.out.print(i+"\n");
}else{
System.out.print(i+"\t");
}
sum++;
} }
}
将代码变灵活,从控制台输入月份和年份,来生成日历
import java.util.Scanner;
public class Cal{
public static void main(String[] args){
Scanner in=new Scanner(System.in);
System.out.println("-----万年历-----");
System.out.println("请输入年份:");
int year=in.nextInt();
System.out.println("请输入月份:");
int month=in.nextInt();
int sum=0;
int days;
for(int i=1900;i<=year-1;i++){
if(i%4==0&&i%100!=0||i%400==0){//闰年
sum=sum+366;
}else{
sum=sum+365;
}
}
for(int i=1;i<=month-1;i++){
if(i==2){
if(year%4==0&&year%100!=0||year%400==0){
sum=sum+29;
}else{
sum=sum+28;
}
}else if(i==4||i==6||i==9||i==11){
sum=sum+30;
}else{
sum=sum+31;
}
}
sum=sum+1;
//System.out.println("1900年1月1日到2018年11月1日一共有"+sum+"天"); int wekDay=sum%7;
//System.out.println("2018年11月1日为星期"+sum%7); System.out.println("日\t一\t二\t三\t四\t五\t六");
for(int i=1;i<=wekDay;i++){
System.out.print("\t");
} if(month==2){
if(year%4==0&&year%100!=0||year%400==0){
days=29;
}else{
days=28;
}
}else if(month==4||month==6||month==9||month==11){
days=30;
}else{
days=31;
} for(int i=1;i<=days;i++){//输出2018年11月份的日历
if(sum%7==6){
System.out.print(i+"\n");
}else{
System.out.print(i+"\t");
}
sum++;
} }
}
最新文章
- iOS 获取网络状态
- mysql 性能优化方案
- javascript中利用柯里化函数实现bind方法
- NABCD
- [No000029]程序员的那些事儿 -- 皆大欢喜的加薪
- Android成长日记-Android四大组件之Service组件的学习
- odoo注销后在登录时的用户名和密码
- TchApp项目说明
- 大部分人努力程度之低,根本轮不到拼天赋 [转自w3cschool]
- Ubuntu使用总结
- UVaLive 7359 Sum Kind Of Problem (数学,水题)
- POJ 3159 Candies 差分约束dij
- Java基础知识强化之IO流笔记22:FileInputStream / FileOutputStream 复制文本文件案例1
- poj2352 Stars
- PHP开发调试环境配置
- mysql 查询今天,昨天,上个月sql语句 注解
- hibernate学习(四)hibernate的一级缓存&;快照
- Zynq-Linux移植学习笔记之27UIO机制响应外部中断实现【转】
- 2018牛客网暑假ACM多校训练赛(第十场)H Rikka with Ants 类欧几里德算法
- 如何使用openscad绘制一个简单的键帽.
热门文章
- Spring第五篇
- Java50道经典习题-程序40 字符串排序
- Unobrusive Ajax使用
- Hexo下Next主题配置与优化
- Educational Codeforces Round 61 (Rated for Div. 2)F(区间DP,思维,枚举)
- 斐波那契数列的Python实现
- django 基础框架学习 (一)
- P3628 [APIO2010]特别行动队
- linux curl命令:curl: (7) couldn&#39;t connect to host ?
- Solr学习笔记(1) —— Solr概述&;Solr的安装