输入年份:year和月份:month,得到该年份中月份的天数
输入:
2008 2
输出:
29
代码如下:
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int func(int y)
{
if ((y % 4 == 0 && y % 100 != 0) || (y % 400 == 0))//判断y是否为闰年
{
return 1;
}
else
return 0;
}
int main()
{
int y = 0; //年
int m = 0; //月
int arr[12] = { 31,28,31,30,31,30,31,31,30,31,30,31 };//非闰年中各月份的天数
while (scanf("%d %d", &y, &m) != EOF)//输入年,月,若输入为0跳出循环
{
if (m < 1 || m > 12) //对输入的年份和月份进行有效性验证
{
printf("Invalid month.\n");
continue;
}
int a= func(y);//判断闰年的函数
if (a)
{
arr[1] = 29;//闰年中二月份的天数为29
}
printf("%d ", arr[m - 1]);//输出m月中的天数
}
return 0;
}