题目要求
定义一个日期类Date,内有数据成员年、月、日,另有成员函数:构造函数用于初始化数据成员,输出,闰年的判断。编写主函数:创建日期对象,计算并输出该日是该年的第几天。
输入:
每组测试数据仅包含一个测试用例,每个测试用例占一行包括三个数,分别表示年、月、日。
输出:
该日是该年的第几天。
输入样例:
2006 3 5
输出样例:
64 (2006年3月5日是该年的第64天)
代码
#include<iostream>
using namespace std;
class Date{
private:
int year, month, day, y, d;
public:
int pd()
{
if((year%4==0 && year%100!=0) || year%400==0) // 如果年份符合闰年的条件之一,即可判定为闰年
{
y = 1; // 标记为闰年
}
else
{
y = 0; // 标记为平年
}
}
int in()
{
cin >> year >> month >> day; // 读取日期数据
}
int js() // 计算日期到全年第几天的函数
{
int x=0, a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int i, r=0;
for(i=0; i<month; i++) // 循环遍历每个月,将该月的天数累加到变量 x 中
{
x += a[i];
}
x += day; // 将当前月的天数加上指定的日数
if(year%4==0 && year%100!=0 || year%100==0)
{
r = 1;
}
if(r && month>2) // 如果当前年份是闰年,并且当前月份大于 2 月,需要将多出的一天加上
{
x++;
}
return x; // 返回全年第几天的结果
}
};
int main()
{
Date d1;
d1.in(); // 调用对象的 in() 函数读取日期数据
d1.pd(); // 调用对象的 pd() 函数判断该年份是否为闰年
int a = d1.js(); // 调用对象的 js() 函数计算日期到全年第几天的结果
cout << a; // 输出结果
return 0;
}
文章描述了一个C++实现的日期类Date,包含年、月、日数据成员和构造函数、输出、闰年判断功能。主函数通过创建日期对象并计算其在当年的天数来展示类的使用。
2746

被折叠的 条评论
为什么被折叠?



