c++给出一个不多于四位的正整数,求它是几位数
时间: 2024-10-19 15:16:05 浏览: 34
输入一个正整数,判断是不是素数(C++)
在 C++ 中,你可以通过取模运算和循环来确定一个不多于四位的正整数是几位数。下面是一个简单的函数示例:
```cpp
#include <iostream>
int getDigitLength(int num) {
if (num == 0) { // 如果是0,直接返回1,因为0有1位
return 1;
}
int length = 0; // 初始化长度为0
while (num != 0) { // 当数字不为0时继续
length++; // 每次循环加1表示又发现一位数字
num /= 10; // 取整除10,去掉最低位
}
// 返回结果
return (length > 4) ? 4 : length; // 数字不超过4位,所以返回长度;如果超过4位则截断到4位
}
int main() {
int input;
std::cout << "请输入一个不多于四位的正整数:";
std::cin >> input;
int digit_length = getDigitLength(input);
std::cout << "该数字有 " << digit_length << " 位。\n";
return 0;
}
```
在这个程序中,`getDigitLength` 函数会计算输入的正整数 `num` 的有效位数,并在结果超过4位时自动截断。
阅读全文