50道Java习题之14
2014-08-01 20:14
260 查看
题目:输入某年某月某日,判断这一天是这一年的第几天?
import java.util.Scanner; public class Problem_14 { public static void main(String[] args) { int days = 31, flag = 1, sum = 0; int year = 0, month = 0, day = 0; Scanner sc = new Scanner(System.in); while (flag == 1) { flag = 0; System.out.print("输入年:"); year = sc.nextInt(); System.out.println("输入月:"); month = sc.nextInt(); System.out.println("输入日:"); day = sc.nextInt(); if (year < 0 || month < 0 || month > 12 || day < 0 || day > 31) { System.out.println("输入错误,请重新输入!"); flag = 1; } } if (month == 1) System.out.println(year + "-" + month + "-" + day + "是这年的第" + day + "天"); else { for (int i = 2; i <= month; i++) { switch (i) { case 3: case 5: case 7: case 8: case 10: case 12: days = 31; break; case 2: if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) days = 29; else days = 28; break; case 4: case 6: case 9: case 11: days = 30; break; } sum += days; } System.out.println(year + "-" + month + "-" + day + "是这年的第" + (sum + day) + "天"); } } }
相关文章推荐