Java题-输入某年某月某日,判断这一天是这一年的第几天?
题目:输入某年某月某日,判断这一天是这一年的第几天?
程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于3时需考虑多加一天。
闰年2月有29天,全年共有366天。普通闰年是指公历年份是4的倍数的,且不是100的倍数,世纪闰年则必须是400的倍数。
第一种:
public class Time {public static void main(String[] args) {int year;int mouth;int day=0;int days;//累计天数int d=0;int e = 0;Scanner scanner = new Scanner(System.in);do {System.out.println("输入年:");year = scanner.nextInt();System.out.println("输入月:");mouth = scanner.nextInt();System.out.println("输入日:");days = scanner.nextInt();if (mouth < 0 || mouth > 12 || days < 0 || days > 31) {System.out.println("input error!");e = 1;}} while (e == 1);for (int i = 1; i <mouth; i++) {switch (i) {case 1:case 3:case 5:case 7:case 8:case 10:case 12: {day = 31;break;}case 4:case 6:case 9:case 11: {day = 30;break;}case 2: {/*** 闰年:①:非整百年数除以4,无余为闰,有余为平;②整百年数除以400,无余为闰有余平* 二月:平年28天、闰年29天*/if ((year % 100 !=0 &&year % 4 == 0) || (year % 100 == 0 && year%400==0)) {day = 29;} else {day = 28;}}default:break;}d+=day;}System.out.println("这是"+year+"年的"+(d+days)+"天");}}
第二种:
import java.util.*;
public class Main3{public static void main(String args[]){int a ,sum = 0;boolean leap = false ,b = false;Scanner scanner = new Scanner(System.in);System.out.println("请输入年 月 日,以空格隔开:");a = scanner.nextInt();if(a > 2 && a <= 12)b = true;if(a % 4 == 0 && a % 100 != 0 || a % 400 == 0)leap = true;a = scanner.nextInt();switch(a){case 2 : sum = 31;break;case 3 : sum = 59;break;case 4 : sum = 90;break;case 5 : sum = 120;break;case 6 : sum = 151;break;case 7 : sum = 181;break;case 8 : sum = 212;break;case 9 : sum = 243;break;case 10 : sum = 273;break;case 11 : sum = 304;break;case 12 : sum = 334;break;default : System.out.println("error");}a = scanner.nextInt();sum += a;if(leap && b)sum ++;System.out.println("您输入的日期是该年第" + sum + "天");}
}
第三种:
import java.util.*;
public class test {public static void main (String[]args){int day=0;int month=0;int year=0;int sum=0;int leap; System.out.print("请输入年,月,日\n"); Scanner input = new Scanner(System.in);year=input.nextInt();month=input.nextInt();day=input.nextInt();switch(month) /*先计算某月以前月份的总天数*/ { case 1:sum=0;break; case 2:sum=31;break; case 3:sum=59;break; case 4:sum=90;break; case 5:sum=120;break; case 6:sum=151;break; case 7:sum=181;break; case 8:sum=212;break; case 9:sum=243;break; case 10:sum=273;break; case 11:sum=304;break; case 12:sum=334;break; default:System.out.println("data error");break;} sum=sum+day; /*再加上某天的天数*/ if(year%400==0||(year%4==0&&year%100!=0))/*判断是不是闰年*/ leap=1; else leap=0; if(leap==1 && month>2)/*如果是闰年且月份大于2,总天数应该加一天*/ sum++; System.out.println("It is the the day:"+sum);}
}
Java题-输入某年某月某日,判断这一天是这一年的第几天?相关推荐
- 每日一题——输入某年某月某日,判断是这一年的第几天
11. 输入某年某月某日,判断是这一年的第几天 关于calendar模块的使用: Python标准库--time模块和calendar模块_笨小古的博客-CSDN博客_time模块 # 输入某年某月某 ...
- python输入某年某月某日判断这是第几天_Python编程实现输入某年某月某日计算出这一天是该年第几天的方法...
本文实例讲述了Python编程实现输入某年某月某日计算出这一天是该年第几天的方法.分享给大家供大家参考,具体如下: #基于 Python3 一种做法: def is_leap_year(year): ...
- java那一年出来的_输入某年某月某日 判断其是那一年的第多少天
[java]代码库Scanner scan = new Scanner(System. in); System. out .print("请输入年:" ); int year = ...
- Java编程——输入某年某月某日,判断这一天是这一年的第几天?
package date; import java.util.*; public class Date { public static void main(String[] args) { int y ...
- Java输入某年某月某日,判断这一天是这一年的第几天?
分析:大家都知道,每年的总共日期,要么就是365天,要么就是366天,具体是取决于闰年还是平年,更确切的说就是每年二月是28天还是29天,归结到这个问题,有一个关键的认识点,就是求解这一年是闰年(36 ...
- (JAVA编程练习):输入某年某月某日,判断这一天是这一年的第几天?
目录 前言: 1.题目: 2.运行结果: 3.代码: (1)关键解析: (2)完整代码: 前言: 没有学习! 要军训了!苦日子要来了! 1.题目: 输入某年某月某日,判断这一天是这一年的第几天? 2. ...
- 输入某年某月某日,Java判断这一天是这一年的第几天?
输入某年某月某日,判断这一天是这一年的第几天? package p3;一.class judgedaypublic class judgeday {public static void main(St ...
- 第四题:输入某年某月某日,判断这一天是这一年的第几天?
#输入某年某月某日,判断这一天是这一年的第几天? '''思路:首先年月日是分着输入还是一块输入,想到如果一块输入可能还需要分割分别找到年月日 所以还是分着输入比较好:接着考虑计算天数其实就是往常月份的 ...
- 代码实现:输入某年某月某日,判断这一天是这一年的第几天?
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; impor ...
最新文章
- mach空串 php preg_PHP 优化详解
- c++派生类和基类的构造函数和析构函数
- 【Uva 10934】Dropping water balloons
- web性能測試工具-沒還有實驗-URL收集_无需整理
- Android之解决打补丁包后移动端为什么不升级,升级之后出现“应用未安装“,以及更新成功之后反复更新问题
- 前端学习(1328):服务器基础概念
- Exchange 2013 SP1部署系列7:发送连接器的配置
- 爆料人透露苹果正开发可折叠iPhone:两块独立屏幕连接 无刘海
- 基于JAVA+SpringMVC+MYSQL的排班管理系统
- matlab里的deploy,MATLAB deploytool simulink未定义函数'load_system'
- (转)java中使用memcache
- 2021-06-17 compareAndSet 比较交换 CAS
- JDK11 JAVA11下载安装与快速配置环境变量教程
- 编程需要知道多少数学知识?
- 自我管理经典书籍推荐:除了《自我管理必读12篇》,这些书也不容错过
- 关于win10重新安装应用商店(Microsoft Store)的解决方案
- windows命令行工具(转)
- 点线特征融合求取相机位姿
- MapReduce案例:手机流量的统计
- JetSon-nano板卡_从sd卡烧录到tensorRT部署_一条龙
热门文章
- POC [Proof of Concept] 原型 / 概念证明
- 计算机毕设-JavaWeb在线球鞋销售商城系统代码-在线商城系统-商城系统SpringMVC+Spring+Mybatis
- 2022-2028年中国人工耳蜗行业市场运营格局及前景战略分析报告
- lg webos破解_LG重新开放WebOS的资源,Pixel 2相机背后的AI以及更多新闻
- StringUtils常用方法
- 如何部署 H5 游戏到云服务器?
- 2019北京新零售无人售货展会
- PHP面试题 - PHP语言基础
- 发布变更又快又稳?腾讯运维工程师经验首发
- html滑动开关按钮实现