乌衣巷


私信TA

用户名:Andyy

访问量:1841

签 名:

等  级
排  名 8507
经  验 1224
参赛次数 5
文章发表 2
年  龄 0
在职情况 学生
学  校 中国地质大学(武汉)
专  业

  自我简介:

解题思路:

  1. 输入中含/,所以用string类型存储。string a存输入数据。

  2. 看代码吧,不多说了,23333.

  注意事项:


参考代码:

#include<iostream>
#include<string>
using namespace std;
int main() {
 string a;int b[12] = { 31,28,31,30,31,30,31,31,30,31,30,31 };
 while (cin >> a) {
  int year = (a[0] - '0') * 1000 + (a[1] - '0') * 100 + (a[2] - '0') * 10 + (a[3] - '0');
  int month, day,all_day=0;
  if (a[6] == '/') {
   month = a[5] - '0';
   if (a.length() == 9) {
    day = (a[7] - '0') * 10 + (a[8] - '0');
   }
   else
    day = a[7] - '0';
  }
  else if (a[7] == '/') {
   month = (a[5] - '0') * 10 + (a[6] - '0');
   if (a.length() == 9)
    day = (a[8] - '0');
   else
    day = (a[8] - '0') * 10 + (a[9] - '0');
  }
   for (int i = 0;i < month - 1;i++) {
    all_day += b[i];
   }
   all_day += day;
   if ((year % 400 == 0) || (year % 4 == 0 && year % 100 != 0)) {
    if (month > 2)
     all_day++;
   }
   cout << all_day << endl;
 }
 return 0;
}

 

0.0分

3 人评分

  评论区

  • «
  • »