Java中计算出某个日期是一年当中的第几天
2018-06-21 00:03
169 查看
Java中计算出某个日期是一年当中的第几天
在网上看到有一位网友提问:
- 接受用户输入一个月份和一个日期如:3 21表示输入的是3月21号计算出3月21日是一年当中的第几天。请严格遵守历法。。
- 1、完成功能。
- 2、在完成第一步的情况,请考虑闰年问题。用户要输入年月日三个整数。
- 3、在完成第二步的前提下,请考虑输入非法的问题。
运行结果:
/** * */ package first; import java.util.Scanner; /** * @author HD * */ public class Datemain { /** * @param args */ public static void main(String[] args) { System.out.println("接受用户输入一个月份和一个日期,计算出是一年当中的第几天"); System.out.println("\t输入月份后,按下回车,再输入日期"); System.out.println("\n请输入4位数年份:"); while(true) { int year,month,day = 0,x,i,j,sum = 0,cal=0; Scanner scaner = new Scanner(System.in); year = scaner.nextInt(); if(year%4 == 0 && year%100 != 0 || year%400 == 0) { System.out.println("请输入月份:"); month= scaner.nextInt(); if(month == 2){ System.out.println("请输入日期:"); day= scaner.nextInt(); while(day > 30 || day < 1) { System.out.println("输入有误,重新输入日期:"); x =scaner.nextInt(); day = x; } } if(month % 2 != 0){ System.out.println("请输入日期:"); day= scaner.nextInt(); while(day > 31 || day < 1) { System.out.println("输入有误,重新输入日期:"); x =scaner.nextInt(); day = x; } } if(month !=2 && month % 2 == 0){ System.out.println("请输入日期:"); day= scaner.nextInt(); while(day > 30 || day < 1) { System.out.println("输入有误,重新输入日期:"); x =scaner.nextInt(); day = x; } } System.out.println( "您输入的是:" + year+"年"+ month + "月" + day + "日"); int arr[] = {31,29,31,30,31,30,31,30,31,30,31,30}; for(i = 0;i < month-1; i++) { sum += arr[i]; } cal = sum + day; System.out.println( year+"年"+ month + "月" + day + "日"+"是" + year+ "年" + "中第" + cal + "天" ); } else { System.out.println("请输入月份:"); month= scaner.nextInt(); if(month == 2){ System.out.println("请输入日期:"); day= scaner.nextInt(); while(day > 29 || day < 1) { System.out.println("输入有误,重新输入日期:"); x =scaner.nextInt(); day = x; } } if(month % 2 != 0){ System.out.println("请输入日期:"); day= scaner.nextInt(); while(day > 31 || day < 1) { System.out.println("输入有误,重新输入日期:"); x =scaner.nextInt(); day = x; } } if(month !=2 && month % 2 == 0){ System.out.println("请输入日期:"); day= scaner.nextInt(); while(day > 30 || day < 1) { System.out.println("输入有误,重新输入日期:"); x =scaner.nextInt(); day = x; } } System.out.println( "您输入的是:" + year+"年"+ month + "月" + day + "日"); int arr[] = {31,29,31,30,31,30,31,30,31,30,31,30}; for(i = 0;i < month-1; i++) { sum += arr[i]; } cal = sum + day; System.out.println( year+"年"+ month + "月" + day + "日"+"是" + year+ "年" + "中第" + cal + "天" ); System.out.println("\n请继续输入4位数年份:"); } } } }
阅读更多
相关文章推荐
- 编写程序,该程序启动后用户可以按“yyyy-MM-dd”的格式输入一个日期,程序计算这一天是星期几,并且计算出是一年中的第几天
- C#8—写一个测试标准身高体重的程序、输入日期年月日, 计算这一天是一年中的第几天(考虑闰年)
- 黑马程序员 测试题:编写程序,该程序启动后用户可以按“yyyy-MM-dd”的格式输入一个日期,程序计算这一天是星期几,并且计算出是一年中的第几天
- NYOJ_75 日期计算 (判断这一天是这一年中的第几天)
- 计算日期是一年中的第几天
- java实现闰年区分并计算一天在一年中的第几天
- 计算日期是一年中的第几天(不用函数)
- NYOJ_75 日期计算 (推断这一天是这一年中的第几天)
- 按如下函数原型用函数编程解决如下的日期转换问题(要求考虑闰年的问题): 输入某年某月某日,计算并输出它是这一年的第几天。 /* 函数功能: 对给定的某年某月某日,计算它是这一年的第几天 函数参数:
- 黑马程序员—编写程序,该程序启动后用户可以按“yyyy-MM-dd”的格式输入一个日期, *程序计算这一天是星期几,并且计算出是一年中的第几天。 */
- 日期计算 一年中的第几天
- Java 获得指定日期是一年中的第几天
- 【C语言】计算指定日期是一年中第几天
- 用C编程计算某日期是一年中第几天
- 黑马程序员---------------------编写程序,该程序启动后用户可以按“yyyy-MM-dd”的格式输入一个日期, * 程序计算这一天是星期几,并且计算出是一年中的第几天
- 华为OJ ---计算日期到天数的转换(给定一个日期,输出为这一年的第几天)
- 用C语言来实现_输入一个日期(年月日),计算是这一年中的第几天(集思广议)
- 计算某日期是一年中的第几天
- C语言实现通过日期计算这是一年中的第几天
- Java实现给定一个日期 求出这个日期是这一年中的第几天