Java重写《C经典100题》 --04

【程序4】
题目:输入某年某月某日,判断这一天是这一年的第几天?
1.程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于3时需考虑多加一天。
2.程序源代码:

 1 import java.util.Scanner;
 2 
 3 /*本文转自博客:www.cnblogs.com/java-100
 4  【程序4】
 5  题目:输入某年某月某日,判断这一天是这一年的第几天?
 6  程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天。
 7  特殊情况,闰年且输入月份大于3时需考虑多加一天。
 8  */
 9 
10 public class Java04 {
11 
12     public static void main(String[] args) {
13         System.out.print("请输入需要查询的年月日,以空格隔开,例 2012 2 22:");
14         Scanner scanner = new Scanner(System.in);
15         int year = scanner.nextInt();
16         int month = scanner.nextInt();
17         int day = scanner.nextInt();
18         scanner.close();
19         int[] days;
20         if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
21             days = new int[] { 0, 31, 60, 91, 121, 152, 182, 213, 244, 274,
22                     305, 335 };
23         } else {
24             days = new int[] { 0, 31, 59, 90, 120, 151, 181, 212, 243, 273,
25                     304, 334 };
26         }
27         System.out.print(year + "年" + month + "月" + day + "日是该年的第"
28                 + (days[month - 1] + day) + "天");
29     }
30 }

 

posted @ 2016-03-13 21:52  Java-100  阅读(230)  评论(0编辑  收藏  举报

进入Java-100博客   博客声明