从键盘输入一个年份和一个月份输出该年该月有多少天C加加
时间: 2023-10-26 08:35:01 浏览: 37
好的,下面是 C++ 的代码实现:
```cpp
#include <iostream>
using namespace std;
int main() {
int year, month;
cout << "请输入年份和月份(格式:yyyy mm):" << endl;
cin >> year >> month;
int days;
switch (month) {
case 2: // 二月份特殊处理
days = (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0) ? 29 : 28;
break;
case 4:
case 6:
case 9:
case 11: // 四、六、九、十一月份有30天
days = 30;
break;
default:
days = 31; // 其他月份都有31天
}
cout << year << "年" << month << "月有" << days << "天" << endl;
return 0;
}
```
注:这里使用了三目运算符和 switch-case 语句,可以根据输入的年份和月份进行计算,得出该年该月有多少天。
相关问题
用c加加写输入一个四位的正整数,输出各位数字之和
很高兴为您服务!使用C++编写的程序可以用以下代码计算出一个四位正整数的各位数字之和:#include <iostream> using namespace std; int main() { int num; cout << "请输入一个四位正整数:" << endl; cin >> num; int a, b, c, d; a = num / 1000; b = num % 1000 / 100; c = num % 100 / 10; d = num % 10; cout << "该数字的各位数字之和是: " << a + b + c + d << endl; return 0; }
输入一个三位数请输出小于该三位数的各位数字之和为九的最大三位数C加加
好的,根据您的要求,这里给出 C++ 代码实现:
```c++
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
for (int i = n - 1; i >= 100; i--) {
int sum = 0;
int num = i;
while (num > 0) {
sum += num % 10;
num /= 10;
}
if (sum == 9) {
cout << i << endl;
return 0;
}
}
cout << "不存在满足条件的三位数" << endl;
return 0;
}
```
首先,我们输入一个三位数 `n`,然后从 `n-1` 开始往下找,直到找到一个满足条件(个位数字之和为9)的三位数为止。
在循环中,我们使用 `sum` 变量来记录当前数字的个位数字之和。具体来说,我们通过取模运算和整除运算来逐位计算数字的各位数字之和,这部分的代码如下:
```
int sum = 0;
int num = i;
while (num > 0) {
sum += num % 10;
num /= 10;
}
```
如果当前数字的各位数字之和为9,那么就找到了符合要求的数,直接输出即可。
最后,如果循环结束后仍然没有找到符合要求的数,那么输出一个提示信息表示不存在这样的三位数。