21xrx.com
2024-12-22 20:59:28 Sunday
登录
文章检索 我的文章 写文章
C++实现输入日期判断是一年中第几天
2023-06-29 01:36:47 深夜i     --     --
- C++ - 输入日期 - 判断 - 一年中第几天

C++是一门功能强大、被广泛使用的编程语言,在日常生活中,我们不光可以在计算机上完成各种任务,还可以通过编程的方式解决一些实用问题。例如,如何判断某个日期是一年中的第几天?这在计算机程序中是一个非常常见的需求,下面我们就来看一下如何用C++实现这个功能。

首先,我们需要输入一个日期,包括年、月、日三个数字,可以通过读取键盘输入的方式获取这些信息。然后,我们需要判断输入日期是否合法,即月份和日期是否在正确的范围内。如果日期不合法,程序应该给出相应的提示并退出。

接着,我们需要计算输入日期是这一年的第几天。这个过程可以分为以下几步:

1. 判断该年是否为闰年。如果该年是闰年,2月份有29天,否则只有28天。

2. 根据输入的月份,计算前面的月份加起来一共有多少天。例如,如果输入日期为3月1日,那么前两个月(1月和2月)的天数要加起来,才能得到3月1日是这一年中的第几天。

3. 加上输入日期的日期,得到最终的结果。

下面是一份示例代码,可以在C++编译器中直接运行:


#include<iostream>

using namespace std;

int main()

{

  int year, month, day;

  cout << "请输入日期,格式为:年 月 日" << endl;

  cin >> year >> month >> day;

  int months[13] = 31;

  int sum, i;

  if (year < 1 || month < 1 || month > 12 || day < 1 || day > months[month])

    cout << "输入日期有误!" << endl;

    return 0;

  

  //判断是否为闰年

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

    months[2] = 29;

  }

  else {

    months[2] = 28;

  }

  sum = 0;

  //计算前面的月份加起来一共有多少天

  for (i = 1; i < month; i++) {

    sum += months[i];

  }

  //加上输入日期的日期

  sum += day;

  cout << year << "年" << month << "月" << day << "日是" << "这一年的第" << sum << "天" << endl;

  return 0;

}

通过这份代码,我们可以轻松地输入一个日期,并且准确地计算出该日期是这一年的第几天。这种用编程解决实际问题的方法不仅实用,而且富有乐趣,对于学习编程的人来说,也是一种很好的练习。

  
  

评论区

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