请编写函数,求某年某月的天数,即该月的最大日数。+函数原型+//+月天数+intc++
1个回答
关注
展开全部
以下是C++的函数原型和示例代码。函数原型:
咨询记录 · 回答于2023-04-18
请编写函数,求某年某月的天数,即该月的最大日数。+函数原型+//+月天数+intc++
以下是C++的函数原型和示例代码。函数原型:
int getMonthDays(int year, int month);
示例代码:
#include using namespace std;int getMonthDays(int year, int month) { if (month == 2) { if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) { return 29; } else { return 28; } } else if (month == 4 || month == 6 || month == 9 || month == 11) { return 30; } else { return 31; }}
int main() { int year = 2023, month = 4; int days = getMonthDays(year, month); cout << "The number of days in " << year << "/" << month << " is " << days << endl; return 0;}
在上面的代码中,我们定义了一个名为getMonthDays的函数,它接收两个参数:年份和月份,返回该月份的天数。我们首先判断2月份是否为闰年,如果是则返回29天,否则返回28天。对于其它月份,我们使用简单的条件语句进行判断返回相应的天数。最后,在主函数中调用该函数并打印出结果。
请编写函数,求某年某月的天数,即该月的最大日数。函数原型// 月天数int MaxDayMonth(int year, int month);说明:参数 year和month 为年份和月份,若参数正确有效,则函数值为该月的最大日数,否则为0。在头文件 MyDate.h 中声明日期类。MyDate.h#ifndef _MyDate_h_#define _MyDate_h_// 定义日期类class MYDATE{public: // 判断闰年 static bool IsLeapYear(int year); // 月天数 static int MaxDayMonth(int year, int month);};#endif在程序文件 MyDate.cpp 中编写函数。MyDate.cpp#include #include using namespace std;#include "MyDate.h"// 判断闰年bool MYDATE::IsLeapYear(int
第一个
以下是实现MyDate.cpp中的两个函数:
#include #include #include "MyDate.h"using namespace std;// 判断闰年 bool MYDATE::IsLeapYear(int year) { if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) { return true; } else { return false; }}// 获取天数
int MYDATE::GetDays(int year, int month, int day) { int days = day; for (int i = 1; i < month; i++) { switch (i) { case 2: if (MYDATE::IsLeapYear(year)) { days += 29; } else { days += 28; } break; case 4: case 6: case 9: case 11: days += 30; break; default: da
在上面的代码中,我们首先实现了判断一个年份是否为闰年的IsLeapYear()函数,它接收一个参数:年份,返回值为布尔类型,表示该年份是否为闰年。接下来,我们实现了获取一个日期所在年份已经过去的天数的GetDays()函数,它接收三个参数:年份、月份和日期。首先将日数赋值给days变量,然后使用循环和switch语句累加该日期之前每个月的天数。在计算2月份的天数时,我们调用了IsLeapYear()函数来判断是否为闰年。两个函数的实现都放在MYDATE命名空间中,因此需要在头文件MyDate.h中声明该命名空间:
#ifndef MYDATE_H#define MYDATE_Hnamespace MYDATE { bool IsLeapYear(int year); int GetDays(int year, int month, int day);}#endif
这样,我们就完成了MyDate.cpp文件的编写。
第二个
#include #include "MyDate.h"using namespace std;int main() { int y, m, n; cout < "请输入年份和月份:"; cin >> y >> m; n = MYDATE::GetDays(y, m, 1); cout << y << "年" << m << "月有" << MYDATE::GetDays(y, m, MYDATE::MaxDayMonth(y, m)) - n + 1 << "天" << endl; return 0;}
以上代码通过调用GetDays()和MaxDayMonth()函数来计算出给定年份和月份的天数,并输出结果。