①请编写函数,要求按照格式输出日期(日-月-年) ②要求再当天的日期上再加上之后的两天日期 ③要求定义的日期格式,数据成员正确 ④要求输入年月日能够正确显示今天日期 ⑤要求输入年月日能够正确显示后两天日期
时间: 2024-05-12 21:19:12 浏览: 47
结构体变量(包括年、月、日),编程序,要求输入年月日,程序能计算并输出该日在本年中是第几天
以下是一个可能的解决方案,其中日期格式为“日-月-年”:
```cpp
#include <iostream>
using namespace std;
class Date {
private:
int day;
int month;
int year;
public:
Date(int d, int m, int y) {
day = d;
month = m;
year = y;
}
void print() {
cout << day << "-" << month << "-" << year << endl;
}
void addTwoDays() {
day += 2;
if (month == 2) {
if (day > 28) {
day -= 28;
month++;
}
} else if (month == 4 || month == 6 || month == 9 || month == 11) {
if (day > 30) {
day -= 30;
month++;
}
} else {
if (day > 31) {
day -= 31;
month++;
if (month > 12) {
month = 1;
year++;
}
}
}
}
};
int main() {
int d, m, y;
cout << "Enter today's date (day month year): ";
cin >> d >> m >> y;
Date today(d, m, y);
cout << "Today's date is: ";
today.print();
cout << "Two days later, the date will be: ";
today.addTwoDays();
today.print();
return 0;
}
```
在这个解决方案中,定义了一个Date类,用于表示日期。它有三个私有数据成员:day、month和year。构造函数可以接受一个日、月和年,并将它们存储在相应的数据成员中。print函数用于按照格式输出日期。addTwoDays函数将日期增加两天,并处理月份和年份的溢出。main函数首先从用户那里获取今天的日期,然后创建一个Date对象,并打印今天的日期。然后调用addTwoDays函数增加两天日期,并再次打印结果。
阅读全文