酷代码 AI
菜单
服务商

C++ 用 while 语句轻松计算两数之和最高位

```cpp #include <iostream> #include <cmath> using namespace std; int main() { int a, b; cin >> a >> b; int n = a + b; if (n == 0) { cout << 0; return 0; } if (n < 0) { n = -n; } int base = 1; while (n / base >= 10) { base *= 10; } int highestDigit = n / base; cout << highestDigit; return 0; } ``` 代码解释: 1. 输入处理: - 定义变量 `a` 和 `b`,并使用 `cin` 读取用户输入的两个整数。 - 计算 `a` 和 `b` 的和存于 `n`。 2. 特殊情况处理: - 如果 `n` 为 0,最高位就是 0,直接输出并结束程序。 - 如果 `n` 为负数,将其转化为正数,因为负数的最高位和其绝对值的最高位相同。 3. 计算最高位对应的量级: - 初始化 `base` 为 1,表示当前量级。 - 通过 `while` 循环,只要 `n / base` 大于等于 10,就将 `base` 乘以 10,不断增大量级,直到 `base` 达到 `n` 最高位对应的量级。 4. 计算最高位并输出: - 用 `n` 除以 `base` 得到最高位。 - 使用 `cout` 输出最高位。 ######[AI问答 | 398点数解答 | 2025-12-12 20:11:13]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]