解题思路:
先导入数据;
然后遍历1960~2059的每一天;
在遍历时判断是否符合条件;
结束时return 0;
注意事项:
这道题可以延伸两大模版:
一:万能模版
#include <bits/stdc++.h>
using namespace std;
int main() {
return 0;
}
二:时间万能模版(不包含星期,但星期有时也要用时间%7来做)
#include <bits/stdc++.h>
using namespace std;
int main() {
for (int year = 1; year <= 1; year++) {//这个年要标注范围,一般题里面有;
for (int month = 1; month <= 12; month++) {
for (int bay = 1; bay <= 31; bay++) {
if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12) {
} else if (month == 2) {
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
if (bay > 29) {
break;
}
} else if (bay > 28) {
break;
}
} else {
if (bay > 30) {
break;
}
}
//判断条件加这;
}
}
}
return 0;
}
参考代码:
#include <bits/stdc++.h>
using namespace std;
int main() {
int a,b,c;
scanf("%d/%d/%d",&a,&b,&c);
for (int year = 1960; year <= 2059; year++) {
for (int month = 1; month <= 12; month++) {
for (int bay = 1; bay <= 31; bay++) {
if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12) {
} else if (month == 2) {
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
if (bay > 29) {
break;
}
} else if (bay > 28) {
break;
}
} else {
if (bay > 30) {
break;
}
}
if((year%100==a&&month==b&&bay==c)||(year%100==c&&month==a&&bay==b)||(year%100==c&&month==b&&bay==a)){
printf("%d-%02d-%02d\n",year,month,bay);
}
}
}
}
return 0;
}
0.0分
1 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复