C++:输⼊⼀个正整数,计算这个整数是⼏位数?
时间: 2024-10-28 11:08:45 浏览: 23
c++大数大数类.txt(仅重载大于号)
在C++中,要计算一个正整数的位数,可以采用循环遍历每一位数字的方法。以下是一个简单的函数示例:
```cpp
#include <iostream>
int countDigits(int num) {
if (num == 0) { // 特殊情况处理,0的位数为1
return 1;
}
int digits = 0;
while (num != 0) {
num /= 10; // 右移一位,去掉最低位
digits++; // 每次循环增加一位
}
return digits;
}
int main() {
int input;
std::cout << "请输入一个正整数:";
std::cin >> input;
int digitCount = countDigits(input);
std::cout << "这个整数有 " << digitCount << " 位。\n";
return 0;
}
```
在这个程序里,`countDigits` 函数通过不断地将输入的整数除以10并更新计数器 `digits`,直到商变为0为止。最后返回的就是整数的位数。
阅读全文