c语言编程练习题:7-19 计算天数

简介: 本题要求编写程序计算某年某月某日是该年中的第几天。

本题要求编写程序计算某年某月某日是该年中的第几天。

输入格式:

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

输出格式:

在一行输出日期是该年中的第几天。

输入样例1:

2009/03/02

输出样例1:

61

输入样例2:

2000/03/02

输出样例2:

62

鸣谢湖北汽车工业学院袁科老师、用户潘明智补充数据!

代码长度限制16 KB时间限制400 ms内存限制64 MB

#include <stdio.h>


//计算该日期是当年的第几天

int days_of_year(int year,int month,int day){

   // 判断当前是否是闰年,即2月是否有29天

   int month_days[12] = {31,28,31,30,31,30,31,31,30,31,30,31};

   int days = day;

   int i;

   for (i=0;i<month-1;i++){

       days = days+month_days[i];

   }

   if (((year%4==0 && year%100!=0) || year%400==0) && (month>2)){days+=1;}

   return days;

}


int main(){

   int year,month,day,days;

   if(scanf("%d/%d/%d",&year,&month,&day)!=0){

       days = days_of_year(year,month,day);

       printf("%d",days);

   }else{

       printf("输入信息存在错误");

   }

   

   return 0;

}


目录
相关文章
|
2天前
|
存储 Serverless C语言
每天一道C语言编程(结构体的运用):这是一年的第几天?
每天一道C语言编程(结构体的运用):这是一年的第几天?
6 0
|
2天前
|
C语言
每天一道C语言编程(递归:斐波那契数,母牛的故事)
每天一道C语言编程(递归:斐波那契数,母牛的故事)
5 0
|
2天前
|
C语言
每天一道C语言编程(2^k进制数)
每天一道C语言编程(2^k进制数)
6 0
|
2天前
|
C语言
每天一道C语言编程(数组操作)
每天一道C语言编程(数组操作)
6 0
|
2天前
|
C语言
每天一道C语言编程(数字转字母,字母转数字)
每天一道C语言编程(数字转字母,字母转数字)
5 0
|
2天前
|
C语言
每天一道C语言编程(求PI)
每天一道C语言编程(求PI)
5 0
|
2天前
|
C语言 C++
每天一道C语言编程:(去掉:双斜杠注释,去掉空格)
每天一道C语言编程:(去掉:双斜杠注释,去掉空格)
4 0
|
2天前
|
C语言
C语言:内存函数(memcpy memmove memset memcmp使用)
C语言:内存函数(memcpy memmove memset memcmp使用)
|
1天前
|
C语言
C语言—内存函数的实现和模拟实现(内存函数的丝绸之路)
C语言—内存函数的实现和模拟实现(内存函数的丝绸之路)
17 0
|
1天前
|
C语言
C语言—字符函数与字符串函数(字符问题变简单的关键之技)
C语言—字符函数与字符串函数(字符问题变简单的关键之技)
4 0