题目:输入某年某月某日,判断这一天是这一年的第几天?
程序实现:
#include <stdio.h>
void main(){
int year,month,day,sum,result;
printf("请输入年月日输入格式:年,月,日\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;
case 12:
sum = 334;
break;
default: printf("输入的日期格式有问题");
}
//判断是否是闰年,如果是闰年 则加1
if(year%400==0||(year%4==0&&year%100!=0)){
result=sum+1+day;
}else{
//加上具体天数
result = sum + day;
}
printf("%d年%d月%d日 是一年内的第%d天\n",year,month,day,result);
}
结果如下: