A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

  1. import java.util.Scanner;

  2. public class GetDays {
  3.         public static void main(String[] args) {
  4.                 int[] months = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
  5.                 int year, month, day, days = 0;
  6.                 Scanner scanner = new Scanner(System.in);
  7.                 while (true) {
  8.                         System.out.print("请输入年份");
  9.                         year = scanner.nextInt();
  10.                         if (1 <= year) {
  11.                                 break;
  12.                         }
  13.                         System.out.println("输入无效");
  14.                 }
  15.                 while (true) {
  16.                         System.out.print("请输入月份");
  17.                         month = scanner.nextInt();
  18.                         if (1 <= month & 12 >= month) {
  19.                                 break;
  20.                         }
  21.                         System.out.println("输入无效");
  22.                 }
  23.                 while (true) {
  24.                         System.out.print("请输入日子");
  25.                         day = scanner.nextInt();
  26.                         if (2 == month) {
  27.                                 if (1 > day ? false : isRunNian(year) ? 29 >= day : 28 >= day) {
  28.                                         break;
  29.                                 }
  30.                         } else if (1 <= day & day <= months[month]) {
  31.                                 break;
  32.                         }
  33.                         System.out.println("输入无效");
  34.                 }
  35.                 scanner.close();
  36.                 for (int i = 1; i < month; i++) {
  37.                         days += months[i];
  38.                 }
  39.                 days += day;
  40.                 if (isRunNian(year) & 2 < month) {
  41.                         days++;
  42.                 }
  43.                 System.out.println("第" + days + "天");
  44.         }

  45.         public static boolean isRunNian(int year) {
  46.                 return year % 100 == 0 ? year % 400 == 0 : year % 4 == 0;
  47.         }
  48. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
田建 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马