解题思路:这是最容易想到的解法,把每种情况列举出来。
注意事项:
参考代码:
#include <stdio.h>
struct Stu
{
int year;
int month;
int date;
};
int main()
{
struct Stu stu = { 0, 0, 0 };
scanf("%d%d%d", &stu.year, &stu.month, &stu.date);
if (stu.year % 400 == 0 || stu.year % 100 != 0 && stu.year % 4 == 0)
{
switch (stu.month)
{
case 1:
{
printf("%d\n", stu.date);
break;
}
case 2:
{
printf("%d\n", 31 + stu.date);
break;
}
case 3:
{
printf("%d\n", 31 + 29 + stu.date);
break;
}
case 4:
{
printf("%d\n", 31 + 29 + 31 + stu.date);
break;
}
case 5:
{
printf("%d\n", 31 + 29 + 31 + 30 + stu.date);
break;
}
case 6:
{
printf("%d\n", 31 + 29 + 31 + 30 + 31 + stu.date);
break;
}
case 7:
{
printf("%d\n", 31 + 29 + 31 + 30 + 31 + 30 + stu.date);
break;
}
case 8:
{
printf("%d\n", 31 + 29 + 31 + 30 + 31 + 30 + 31 + stu.date);
break;
}
case 9:
{
printf("%d\n", 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + stu.date);
break;
}
case 10:
{
printf("%d\n", 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + stu.date);
break;
}
case 11:
{
printf("%d\n", 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + stu.date);
break;
}
case 12:
{
printf("%d\n", 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30 + stu.date);
break;
}
}
}
else
{
switch (stu.month)
{
case 1:
{
printf("%d\n", stu.date);
break;
}
case 2:
{
printf("%d\n", 31 + stu.date);
break;
}
case 3:
{
printf("%d\n", 31 + 28 + stu.date);
break;
}
case 4:
{
printf("%d\n", 31 + 28 + 31 + stu.date);
break;
}
case 5:
{
printf("%d\n", 31 + 28 + 31 + 30 + stu.date);
break;
}
case 6:
{
printf("%d\n", 31 + 28 + 31 + 30 + 31 + stu.date);
break;
}
case 7:
{
printf("%d\n", 31 + 28 + 31 + 30 + 31 + 30 + stu.date);
break;
}
case 8:
{
printf("%d\n", 31 + 28 + 31 + 30 + 31 + 30 + 31 + stu.date);
break;
}
case 9:
{
printf("%d\n", 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + stu.date);
break;
}
case 10:
{
printf("%d\n", 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + stu.date);
break;
}
case 11:
{
printf("%d\n", 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + stu.date);
break;
}
case 12:
{
printf("%d\n", 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30 + stu.date);
break;
}
}
}
return 0;
}
0.0分
0 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复