编程,,输入n,再输入n个年和月份,输出这个月份对应的天数。

2024-12-19 23:42:22
推荐回答(3个)
回答1:

import java.util.*;

public class TestY{

 public static void main(String[] args){

  ArrayList arr = new ArrayList();

  Scanner sc = new Scanner(System.in);

  System.out.print("请输入n的整数值,:n=");

  int n = sc.nextInt();

  sc.nextLine();

  System.out.println("请输入年月进行查询,格式如:2016 2");

  int x = 0;

  while(x < n){

   String temp = sc.nextLine();

   arr.add(temp);

   x++;

  }

  System.out.println(arr.size());

  for(String str : arr){

   int year = Integer.parseInt(str.substring(0,4));

   int month = Integer.parseInt(str.substring(4).trim());

   System.out.println(date(year,month));

  }

 }

 public static String date(int year, int month){

  if((year%4 == 0 && year%100 != 0) || year % 400 == 0){

   if(month == 2) return year + " " + 29;

  }

  if(month == 2) return year + " " + 28;

  if(month !=2 && month != 4 && month != 6 && month != 9  && month != 11) return year + " " + 31;

   return year + " " + 30;

 }

}

回答2:

int function(int year,int month){
int day = 0;//输出天数
int big [] = {1,3,5,7,8,10,12}
int small[] = {4,6,9,11}
int ping = 2;
if (big.contains(month)){//说明是大月有31天
day = 31;
} else if (small.contains(month)){//说明是月小只有30天
day = 30;
} else{//2月单独考虑,,
if((year%4==0&&year%100!=0)||year%400==0){//闰年
day = 29;

} else{
day = 28;
}
}

return day;
}

回答3:

66666666666666666666666666666666666666666666666666666