C语言用switch语句实现判断日期是这一年的第几天
要求:输入某年某月某日,判断这一天是这一年的第几天?
#include "stdio.h"
int main( ) {
long a,b,c,d,e,x;
scanf("%ld",&x);
a=x/10000;/*分解出万位*/
b=x%10000/1000;/*分解出千位*/
c=x%1000/100;/*分解出百位*/
d=x%100/10;/*分解出十位*/
e=x%10;/*分解出个位*/
if (a!=0)
printf("there are 5, %ld %ld %ld %ld %ld\n",e,d,c,b,a);
else if (b!=0)
printf("there are 4, %ld %ld %ld %ld\n",e,d,c,b);
else if (c!=0)
printf("there are 3, %ld %ld %ld\n",e,d,c);
else if (d!=0)
printf("there are 2, %ld %ld\n",e,d);
else if (e!=0)
printf("there are 1, %ld\n",e);
}
#include "stdio.h"
int main() {
int num1,num2,num3,num4;
scanf("%d %d %d",&num1,&num2,&num3);
if (num1%100==0)
if (num1%400==0)
num4=29;
else
num4=28;
else if (num1%100!=0)
if (num1%4==0)
num4=29;
else
num4=28;
switch (num2)
{
case 1: printf("%d",num3);break;
case 2: printf("%d",31+num3);break;
case 3: printf("%d",31+num4+num3);break;
case 4: printf("%d",31+num4+31+num3);break;
case 5: printf("%d",31+num4+31+30+num3);break;
case 6: printf("%d",31+num4+31+30+31+num3);break;
case 7: printf("%d",31+num4+31+30+31+30+num3);break;
case 8: printf("%d",31+num4+31+30+31+30+31+num3);break;
case 9: printf("%d",31+num4+31+30+31+30+31+31+num3);break;
case 10: printf("%d",31+num4+31+30+31+30+31+31+30+num3);break;
case 11: printf("%d",31+num4+31+30+31+30+31+31+30+31+num3);break;
case 12: printf("%d",31+num4+31+30+31+30+31+31+30+31+30+num3);break;
default:
break;
}
}