牛牛来学习 2021-06-05 21:40 采纳率: 100%
浏览 41
已结题

L1—075不知道为什么就少了一分满分?

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>
#include<string>
using namespace std;
int main()
{
	string p;
	cin >> p;
	if (p.length() == 4)
	{
		if (p[0] == '0' || p[0] == '1' || p[0] == '2' && p[1] == '0' || p[2] == '1')
			cout << "20" << p[0] << p[1] << "-" << p[2] << p[3];
		else
			cout << "19" << p[0] << p[1] << "-" << p[2] << p[3];
	}
	else
		cout << p[0] << p[1] << p[2] << p[3] << "-" << p[4] << p[5];
	return 0;
}

 

 

  • 写回答

1条回答 默认 最新

  • CSDN专家-Time 2021-06-05 21:42
    关注

    看一下什么输入没输出呢。把不通过的输入 和输出展示一下。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)
  • ¥15 Vue3地图和异步函数使用
  • ¥15 C++ yoloV5改写遇到的问题
  • ¥20 win11修改中文用户名路径
  • ¥15 win2012磁盘空间不足,c盘正常,d盘无法写入
  • ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计
  • ¥70 PlayWright在Java上连接CDP关联本地Chrome启动失败,貌似是Windows端口转发问题
  • ¥15 帮我写一个c++工程
  • ¥30 Eclipse官网打不开,官网首页进不去,显示无法访问此页面,求解决方法
  • ¥15 关于smbclient 库的使用