21xrx.com
2024-12-23 00:42:07 Monday
登录
文章检索 我的文章 写文章
C++实现获取月份天数的方法
2023-07-05 08:47:31 深夜i     --     --
C++ 月份 天数 实现方法

C++语言是一种广泛应用于计算机编程的高级语言。它采用面向对象的方法,具有强大的基本数据类型、丰富的运算符和函数、易于扩展的应用程序接口等特点,成为了广大程序员的首选编程语言。在编写C++程序时,获取月份天数是一个经常遇到的问题,下面介绍一种实现方法。

方法一:switch语句

在C++中,我们可以使用switch语句来实现获取月份天数的功能。switch语句是一种常见的控制语句,可以根据不同的变量值执行不同的语句。具体代码如下:


#include <iostream>

using namespace std;

int main()

{

  int year, month, days;

  cout << "请输入年份和月份\n";

  cin >> year >> month;

  switch (month)

  {

    case 1:

    case 3:

    case 5:

    case 7:

    case 8:

    case 10:

    case 12:

      days = 31;

      break;

    case 4:

    case 6:

    case 9:

    case 11:

      days = 30;

      break;

    case 2:

      if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)

      

        days = 29;

      

      else

      

        days = 28;

      

      break;

    default:

      cout << "输入的月份有误!" << endl;

      return -1;

  }

  cout << year << "年" << month << "月有" << days << "天。" << endl;

  return 0;

}

上述代码中,首先通过标准输入读取用户输入的年份和月份。然后通过switch语句实现判断月份的天数。当输入的月份不存在时,程序会输出错误提示并退出。

方法二:数组

除了使用switch语句,我们还可以使用数组来实现获取月份天数的功能。具体代码如下:


#include <iostream>

using namespace std;

int main()

{

  int year, month, days;

  int dayTab[12] = 31;

  cout << "请输入年份和月份\n";

  cin >> year >> month;

  if (month == 2)

  {

    if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)

    

      days = 29;

    

    else

    

      days = 28;

    

  }

  else if (month >= 1 && month <= 12)

  {

    days = dayTab[month - 1];

  }

  else

  

    cout << "输入的月份有误!" << endl;

    return -1;

  

  cout << year << "年" << month << "月有" << days << "天。" << endl;

  return 0;

}

上述代码中,我们使用了一个长度为12的整型数组dayTab来表示每个月的天数。当输入的月份不为2时,我们可以通过数组下标获取对应返回的天数。当输入的月份为2时,我们再进行判断闰年的逻辑并返回对应天数。

综上所述,以上两种方法都可以实现获取月份天数的功能。在实际开发中,可以根据具体情况选择哪种方法实现。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复