天梯赛 L1-075 强迫症 (10 分)
题目
小强在统计一个小区里居民的出生年月,但是发现大家填写的生日格式不统一,例如有的人写 199808,有的人只写 9808。有强迫症的小强请你写个程序,把所有人的出生年月都整理成 年年年年-月月 格式。对于那些只写了年份后两位的信息,我们默认小于 22 都是 20 开头的,其他都是 19 开头的。
输入格式:
输入在一行中给出一个出生年月,为一个 6 位或者 4 位数,题目保证是 1000 年 1 月到 2021 年 12 月之间的合法年月。
输出格式:
在一行中按标准格式 年年年年-月月 将输入的信息整理输出。
测试样例
输入样例1:
9808
输出样例1:
1998-08
输入样例2:
0510
输出样例2:
2005-10
输入样例3:
196711
输出样例3:
1967-11
简单分析:
- 以前只会使用字符串读入再处理
- 现在发现直接输入数字,再取余就可以
代码:
#include <iostream>
using namespace std;
int main() {
int a;
scanf("%d", &a);
int mm = a % 100;
a /= 100;
if (a >= 100) printf("%04d-%02d\n", a, mm);
else if (a >= 22) printf("19%02d-%02d\n", a, mm);
else printf("20%02d-%02d\n", a, mm);
return 0;
}
感悟
- 基础题,月份直接%100就行
该博客介绍了一个简单的C++程序,用于将不统一的出生年月格式整理成标准的年年年年-月月格式。程序根据输入的6位或4位数字,判断年份并进行相应填充,确保输出符合规范。
314

被折叠的 条评论
为什么被折叠?



