1. 程式人生 > >mooc_c語言_PTA練習題_中M2018秋C入門和進階練習_19

mooc_c語言_PTA練習題_中M2018秋C入門和進階練習_19

7-19 計算天數 (15 分)

本題要求編寫程式計算某年某月某日是該年中的第幾天。

輸入格式:

輸入在一行中按照格式“yyyy/mm/dd”(即“年/月/日”)給出日期。注意:閏年的判別條件是該年年份能被4整除但不能被100整除、或者能被400整除。閏年的2月有29天。

輸出格式:

在一行輸出日期是該年中的第幾天。

輸入樣例1:

2009/03/02

輸出樣例1:

61

輸入樣例2:

2000/03/02

輸出樣例2:

62

鳴謝湖北汽車工業學院袁科老師補充資料

#include <stdio.h>
int main(){
  int y,m,d,day=0;
  int day_list[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
  scanf ("%d/%d/%d",&y,&m,&d);//讀入年月日
  if ((y%4 == 0 && y %100 != 0) || y%400 == 0){
	if (m > 2)
	    day += 1; //如果是閏年,且為第二月以上,則天數+1
  }
    	
  for (int i = 1;i < m;i++){
    day += day_list[i];
}//所有月份的天數
  day += d;//總天數
  printf("%d",day);
}