关闭

C语言实例3——输入某年某月某日,判断这一天是这一年的第几天?

标签: 代码c语言实例C语言基础输入某年某月某日
1640人阅读 评论(0) 收藏 举报
分类:

题目:输入某年某月某日,判断这一天是这一年的第几天?

/*
   程序分析:以3月5日为例,应该先把前两个月的加起来,
   然后再加上5天即本年的第几天,特殊情况,闰年且输入
   月份大于3时需考虑多加一天。
*/
#include<stdio.h>
int main(){
	int day, month, year, sum, leap;
	printf("\nplease input year,month,day\n");
	scanf("%d%d%d",&year,&month,&day);
	switch(month){   //先计算某月以前月份的总天数 
		case 1:sum = 0;break;
		case 2:sum = 31;break;
		case 3:sum = 59;break;
		case 4: sum = 90;break;
		case 5:sum = 120;break;
		case 6:sum = 151;break;
		case 7:sum = 181;break;
		case 8:sum = 212;break;
		case 9:sum = 243;break;
		case 10:sum = 273;break;
		case 11:sum = 304;break;
		case 12:sum = 334;break;
		default:printf("data error!");break;
	}
	sum = sum + day;    //再加上某天的天数 
	if(year%400==0||(year%4==0&&year%100!=0)){  //判断是不是闰年 
		leap = 1;
	}else{
		leap = 0;
	}
	if(leap == 1&&month > 2){  //如果是闰年且月份大于2,总数加1天 
		sum++;
	}
	printf("It is the %dth day.",sum);
}


0
1

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:139361次
    • 积分:5335
    • 等级:
    • 排名:第5612名
    • 原创:404篇
    • 转载:14篇
    • 译文:0篇
    • 评论:44条
    最新评论