栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

【蓝桥杯】 合法日期:小蓝正在上小学,老师要求同学们在暑假每天记日记。可是小蓝整个暑假都在玩,直到最后一天才想起要记日记。于是小蓝赶紧编了一些日记交给老师。 没想到,日记很快就被老师发现了问题,...

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【蓝桥杯】 合法日期:小蓝正在上小学,老师要求同学们在暑假每天记日记。可是小蓝整个暑假都在玩,直到最后一天才想起要记日记。于是小蓝赶紧编了一些日记交给老师。 没想到,日记很快就被老师发现了问题,...

【蓝桥杯】 合法日期
  • 题目描述
  • 解题思路
  • 解题代码
    • C语言
      • 法一
      • 法二
  • 测试用例

题目描述

题目传送门 >> 合法日期

【问题描述】
小蓝正在上小学,老师要求同学们在暑假每天记日记。可是小蓝整个暑假都在玩,直到最后一天才想起要记日记。于是小蓝赶紧编了一些日记交给老师。
没想到,日记很快就被老师发现了问题,原来小蓝记完 8 月 31 日的日记,竟又记了 8 月 32 日和 8 月 33 日的日记。这显然是有问题的,因为根本没有 8 月 32 日和 8 月 33 日。
给定一个月份和一个日期,请问 2021 年有没有这一天。

【输入描述】
输入的第一行包含一个整数 m,表示月份。
第二行包含一个整数 d,表示日期。
其中,1≤m≤20,1≤d≤40。

【输出描述】
如果2021年有 m 月 d 日,输入 yes,否则输出 no。

【输入输出样例】
示例1
输入:

 8
 32

输出:

 no

示例2
输入:

 2
 28

输出:

 yes

【运行限制】
• 最大运行时间:1s
• 最大运行内存: 128M


解题思路

【总体思路】
题目已经给了是2021年,我们就可以直接知道2月最多28天。
但这题有个易错点,没去判断月份是否小于等于12。要注意到题目中输入值描述中提到:月份1≤m≤20,日期1≤d≤40,故我们要先判断是否满足m ≤ 12。

【代码思路】
有两种方法:
第一种则是嵌套if :若满足m ≤ 12,则判断月份是多少,d是否小于该月最大日期。
第二种方法是用数组存放每个月的最大日期,然后直接与数组相应值去对比日期。


解题代码 C语言 法一
#include 
int main()
{
  int month, day;
  scanf("%d",&month);
  scanf("%d",&day);
  if(month<13){
    if(month==2){
      if (day<=28){
        printf("yes");
      }
      else{
        printf("no");
      }
      return 0;
    }
    if(month==1 || month==3 || month==5 || month==7 || month==8 || month==10 || month==12){
      if (day<=31){
        printf("yes");
      }
      else{
        printf("no");
      }
      return 0;
    }
    else{
      if (day<=30){
        printf("yes");
      }
      else{
        printf("no");
      }
      return 0;
    }
  }else{
        printf("no");
  }
  return 0;
}
法二
#include 
int main()
{
  int month[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
  int m,d;
  scanf("%d",&m);
  scanf("%d",&d);
  if(m>0 && m<13 && d 
测试用例 

测试1
输入:

 15
 9

输出:

 no

测试2
输入:

 2
 30

输出:

 no
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/352989.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号