(1)主函数功能:输入某一年的第几天,调用子函数计算该天是这一年的几月几日,输出结果。 (2)子函数功能:计算某一年的第几天是这一年的几月几日, 子函数头要求为void MonthDay(int year, int num, int &month, int &day)。用c++实现
时间: 2024-03-09 22:45:32 浏览: 70
C++自定义函数判断某年某月某日是这一年中第几天
5星 · 资源好评率100%
好的,这是一个简单的日期计算问题,下面是代码实现:
```c++
#include <iostream>
using namespace std;
void MonthDay(int year, int num, int &month, int &day) {
int leap = 0; // 标记是否为闰年
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
leap = 1; // 是闰年
int month_day[13] = {0, 31, 28 + leap, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; // 每个月的天数
month = 1;
while (num > month_day[month]) { // 判断输入的天数在哪个月
num -= month_day[month];
month++;
}
day = num;
}
int main() {
int year, num, month, day;
cout << "请输入年份和第几天(用空格分隔):";
cin >> year >> num;
MonthDay(year, num, month, day);
cout << year << "年第" << num << "天是" << month << "月" << day << "日" << endl;
return 0;
}
```
程序运行时,先让用户输入年份和第几天,然后调用 `MonthDay` 函数计算月份和日期,并输出结果。函数中先判断是否为闰年,然后用一个数组 `month_day` 存储每个月的天数,根据输入的天数找到对应的月份和日期。
阅读全文