题目转自南邮编程在线:njupt.housecode.cc
读入一个年份和月份,打印出该月有多少天(考虑闰年),用switch语句实现选择结构。
说明:(1)scanf之前无需用printf给提示信息 。
测试用例的输入及输出结果如下:
测试用例:输入 | 测试用例:输出 |
2009 10< 回车 > | 2009-10-31 |
2009 2< 回车 > | 2009-2-28 |
2008 2 < 回车 > | 2008-2-29 |
代码如下:
#include <stdio.h>
int main()
{
int a, b;
scanf("%d%d", &a, &b);
switch(b){
case 1 : printf("%d-%d-31", a, b); break;
case 3 : printf("%d-%d-31", a, b); break;
case 4 : printf("%d-%d-30", a, b); break;
case 5 : printf("%d-%d-31", a, b); break;
case 6 : printf("%d-%d-30", a, b); break;
case 7 : printf("%d-%d-31", a, b); break;
case 8 : printf("%d-%d-31", a, b); break;
case 9 : printf("%d-%d-30", a, b); break;
case 10 : printf("%d-%d-31", a, b); break;
case 11 : printf("%d-%d-30", a, b); break;
case 12 : printf("%d-%d-31", a, b); break;
}
//当月份为2月时,判断是否为闰年
if(b == 2){
if(a%100 != 0 && a%4 == 0 || a%400 == 0)
printf("%d-%d-29", a, b);
else
printf("%d-%d-28", a, b);
}
return 0;
}
本题考察了switch语句的应用以及闰年的判断