計算天數
阿新 • • 發佈:2021-10-10
本題要求編寫程式計算某年某月某日是該年中的第幾天。
輸入格式:
輸入在一行中按照格式“yyyy/mm/dd”(即“年/月/日”)給出日期。注意:閏年的判別條件是該年年份能被4整除但不能被100整除、或者能被400整除。閏年的2月有29天。
輸出格式:
在一行輸出日期是該年中的第幾天。
輸入樣例1:
2009/03/02
結尾無空行
輸出樣例1:
61
結尾無空行
輸入樣例2:
2000/03/02
輸出樣例2:
62
answer
#include <stdio.h> int leapYear(int year) { if((year%4==0&&year%100!=0)||year%400==0) return 1; else return 0; } int main(){ int year,month,day; int flag; int sum = 0; scanf("%d/%d/%d",&year,&month,&day); if(leapYear(year)) flag = 1; else flag = 0; if(flag) { for(int i = month-1;i >= 1;i--) { switch(i){ case 1: case 3: case 5: case 7: case 8: case 10: case 12: sum += 31; break; case 2: sum += 29; break; case 4: case 6: case 9: case 11: sum += 30; break; } } }else{ for(int i = month-1;i >= 1;i--) { switch(i){ case 1: case 3: case 5: case 7: case 8: case 10: case 12: sum += 31; break; case 2: sum += 28; break; case 4: case 6: case 9: case 11: sum += 30; break; } } } sum += day; printf("%d",sum); return 0; }