问题描述:
小蓝要处理非常多的数据, 其中有一些数据是日期。
在小蓝处理的日期中有两种常用的形式:英文形式和数字形式。
英文形式采用每个月的英文的前三个字母作为月份标识,后面跟两位数字表示日期,月份标识第一个字母大写,后两个字母小写, 日期小于 1010 时要补前导 00。11 月到 1212 月英文的前三个字母分别是
Jan
、Feb
、Mar
、Apr
、May
、Jun
、Jul
、Aug
、Sep
、Oct
、Nov
、Dec
。数字形式直接用两个整数表达,中间用一个空格分隔,两个整数都不写前 导
0
。其中月份用 11 至 1212 分别表示 11 月到 1212 月。输入一个日期的英文形式, 请输出它的数字形式。
输入:
输入一个日期的英文形式。
输出:
输出一行包含两个整数,分别表示日期的月和日。
参考代码:
#include<iostream>
#include<string>
using namespace std;
string s;
int main()
{
cin>>s;
int month,day;
if(s[0]=='J')
{
if (s[1]=='a') month=1;
else if(s[2]=='n') month=6;
else month=7;
}
else if(s[0]=='F') month=2;
else if(s[0]=='M')
{
if(s[2]=='r') month=3;
else month=5;
}
else if(s[0]=='A')
{
if(s[1]=='p') month=4;
else month=8;
}
else if(s[0]=='S') month=9;
else if(s[0]=='O') month=10;
else if (s[0]=='N') month=11;
else month=12;
day=(s[3]-'0')*10+(s[4]-'0');
cout<<month<<" "<<day<<endl;
return 0;
}