c++ 1、设计一个函数,这个函数有两个形参,一个表示年份,一个表示月份,这个函数返回这个月的天数。 2.求三个数中最大数和最小数的差值。
时间: 2024-10-10 09:17:42 浏览: 29
//利用引用形参返回多于一个的值-C++函数PPT
1. 在 C++ 中,你可以设计一个名为 `DaysInMonth` 的函数,它接受两个整数参数,分别代表年份和月份。对于每个月份的天数有固定的规则,例如闰年的2月有29天,非闰年的2月只有28天,其他月份一般按常识判断。下面是一个简单的函数实现,假设输入的月份在1~12范围内:
```cpp
#include <iostream>
int DaysInMonth(int year, int month) {
switch (month) {
case 1: // January
case 3: // March
case 5: // May
case 7: // July
case 8: // August
case 10: // October
case 12: // December
return 31;
case 4: // April
case 6: // June
case 9: // September
case 11: // November
return 30;
case 2: // February
if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) { // Leap year
return 29;
} else {
return 28;
}
default:
std::cerr << "Invalid month!" << std::endl;
return -1; // Return error for invalid input
}
}
// 示例调用
int main() {
int year = 2022, month = 2; // Input the year and month here
int days = DaysInMonth(year, month);
if (days >= 0)
std::cout << "Number of days in the month: " << days << std::endl;
return 0;
}
```
2. 求三个数中的最大数和最小数的差值,可以创建一个函数 `MaxMinDifference`,接收三个整数作为参数,然后找出并计算它们之间的差值:
```cpp
#include <iostream>
int MaxMinDifference(int num1, int num2, int num3) {
int min_num = std::min(num1, std::min(num2, num3));
int max_num = std::max(num1, std::max(num2, num3));
return max_num - min_num;
}
// 示例调用
int main() {
int a = 10, b = 20, c = 15; // Input your three numbers here
int diff = MaxMinDifference(a, b, c);
std::cout << "The difference between the largest and smallest number is: " << diff << std::endl;
return 0;
}
```
阅读全文