酷代码 AI
菜单
服务商

请编写一个程序,输入a和b,并计算n=a+b,输出n的每一位中有多少位是2。 输入: 两个整数a和b。 输出: 一个整数,表示n的每一位中2的个数。#include <iostream> using namespace std; int main() { int a, b; cin >> a >> b; int n; n = a + b; return 0; }

```cpp #include <iostream> using namespace std; int main() { int a, b; cin >> a >> b; int n; n = a + b; int count = 0; // 如果n是负数,先转换为正数处理 if (n < 0) { n = -n; } while (n > 0) { if (n % 10 == 2) { count++; } n /= 10; } cout << count << endl; return 0; } ``` 代码解释 1. 输入部分:使用`cin`读取两个整数`a`和`b`,并计算它们的和`n`。 2. 负数处理:如果`n`是负数,将其转换为正数,因为负数的符号不影响数字中`2`的个数。 3. 统计`2`的个数:通过循环,每次取`n`的最后一位数字,判断是否为`2`,如果是则计数器`count`加`1`,然后将`n`除以`10`去掉最后一位数字,直到`n`变为`0`。 4. 输出结果:使用`cout`输出计数器`count`的值。 [2026-01-11 15:05:24 | AI问答 | 307点数解答]

相关提问
发财导航,免费问AI
实用工具查看更多