编写函数求某年某月某日(**** ** **)是这一年的第几天 。提示:要考虑闰年,
闰年的2月是29天(闰年的条件:是4的倍数但不是100的倍数,或者是400的倍数)。
编写主函数,输入年月日,测试该函数并输出结果。
import java.util.Scanner;
public class Main{
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc=new Scanner(System.in);
int year,month,date; //定义变量
year=sc.nextInt();
month=sc.nextInt();
date=sc.nextInt();
int sum=0;
int c = 0;
int arr[]={31,28,31,30,31,30,31,31,30,31,30,31}; //定义数组用来储存不是闰年的每个月天数
for(int i = 0;i<month-1;i++){
if((year%4==0&&year%100!=0)||year%400==0){ //判断是否为闰年
sum+=arr[i]; //累加和
c=1; //用来下面if语句的判断
}else sum+=arr[i]; //如果不是闰年也累加,但是天数会少一天
}
if(c==0){ //如果等于说明不是闰年
System.out.println(sum+date); //则输出sum
}else System.out.println(sum+date+1); //如果是闰年那么就要=1,
}
}
程序运行结果如下:
1900 3 1
60