c++编程实现:输入一个包含年和月的日期(例如2022年1月),输出其上一个月的日期(例如2021年12月)。 (1)主函数功能:输入日期,调用子函数得到上一个月的日期,并输出。 (2)子函数功能:求输入日期的上一个月的日期, 子函数头要求定义为:void prevMonth(int *year, int *month) 。
时间: 2024-02-27 15:53:01 浏览: 16
下面是使用 C++ 编写的代码实现:
```c++
#include <iostream>
using namespace std;
void prevMonth(int *year, int *month)
{
if (*month == 1) { // 如果是1月,年份需要减1,月份变为12月
*year -= 1;
*month = 12;
} else { // 否则月份减1
*month -= 1;
}
}
int main()
{
int year, month;
cout << "请输入日期(例如2022年1月):" << endl;
cin >> year >> month;
prevMonth(&year, &month); // 调用子函数
cout << "上一个月的日期为:" << year << "年" << month << "月" << endl;
return 0;
}
```
这个程序中,我们定义了一个名为 `prevMonth` 的子函数,用于求输入日期的上一个月的日期。这个函数的参数是两个指针,分别指向年份和月份变量的地址,因为我们需要在函数内部修改这两个变量的值。
在 `prevMonth` 函数内部,我们首先判断月份是否为1月,如果是的话,需要将年份减1,同时月份变为12月;否则,只需要将月份减1。
在主函数中,我们首先输入日期,并将年份和月份分别存储在变量 `year` 和 `month` 中。然后调用子函数 `prevMonth`,将 `year` 和 `month` 的地址作为参数传递给子函数。最后输出上一个月的日期。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)