L1-075 强迫症
小强在统计一个小区里居民的出生年月,但是发现大家填写的生日格式不统一,例如有的人写 199808,有的人只写 9808。有强迫症的小强请你写个程序,把所有人的出生年月都整理成 年年年年-月月 格式。对于那些只写了年份后两位的信息,我们默认小于 22 都是 20 开头的,其他都是 19 开头的。
L1-075 强迫症
💐The Begin💐点点关注,收藏不迷路💐
|
小强在统计一个小区里居民的出生年月,但是发现大家填写的生日格式不统一,例如有的人写 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 <stdio.h>
#include <string.h>
int main() {
char input[7]; // 存储输入的出生年月
scanf(“%6s”, input); // 从标准输入读取出生年月
char output[8]; // 存储输出的出生年月
if (strlen(input) == 4) { // 如果输入是 4 位
int year;
sscanf(input, “%4d”, &year); // 将输入的字符串转换为整数
if (year < 2200) { // 小于 2200,默认为 20 开头
sprintf(output, “20%.2s-%.2s”, input, input + 2); // 拼接成 20xx-xx 格式
} else { // 否则为 19 开头
sprintf(output, “19%.2s-%.2s”, input, input + 2); // 拼接成 19xx-xx 格式
}
} else { // 如果输入是 6 位
sprintf(output, “%.4s-%.2s”, input, input + 4); // 直接拼接成 xxxx-xx 格式
}
printf(“%s\n”, output); // 输出整理后的出生年月
return 0;
}
💐The End💐点点关注,收藏不迷路💐
|
更多推荐
所有评论(0)