题解 | #获得月份天数#
获得月份天数
https://www.nowcoder.com/practice/13aeae34f8ed4697960f7cfc80f9f7f6
#include <stdio.h>//干就完了,虽然有点多
int jan( int a)
{
return 31;
}
int feb(int a)
{
if (a % 4 == 0 && a % 100 != 0 || a % 400 == 0)
return 29;
else return 28;
}
int mar(int a)
{
return 31;
}
int apr(int a)
{
return 30;
}
int may(int a)
{
return 31;
}
int jun(int a)
{
return 30;
}
int jul(int a)
{
return 31;
}
int aug(int a)
{
return 31;
}
int sept(int a)
{
return 30;
}
int oct(int a)
{
return 31;
}
int nov(int a)
{
return 30;
}
int dec(int a)
{
return 31;
}
void mz(int (*p)(int),int a)
{
int ret = p(a);
printf("%d\n", ret);
}
int main()
{
int a = 0;
int b = 0;
while(scanf("%d %d", &a, &b)!=EOF){
switch (b)
{
case 1:mz(jan, a); break;
case 2:mz(feb, a); break;
case 3:mz(mar, a); break;
case 4:mz(apr, a); break;
case 5:mz(may, a); break;
case 6:mz(jun, a); break;
case 7:mz(jul, a); break;
case 8:mz(aug, a); break;
case 9:mz(sept, a); break;
case 10:mz(oct, a); break;
case 11:mz(nov, a); break;
case 12:mz(dec, a); break;
}
}
return 0;
}
