缘由描述 输入一个正整数(小于1000),输出该数是几位数。如输入98,输出2,输入258,输出3,输入0,输出1。 输入 输入一个整数 输出 输出该数的位数_编程语言-CSDN问答
直接从小到大分支判断如果小于10输出1否则如果小于100输出2否则如果小于1000输出3即可, 若要从大到小判断则如果大于99输出3否则如果大于9输出2否则输出1,都是可以的. 用switch-case也可以,不过就是把上面3种判断写3个函数调用就可以了,记得以前有人提问switch-case中如何使用判断.
void 判断整数位数()
{//缘由https://ask.csdn.net/questions/8149406/54882290
int n = 0;
std::cin >> n;
if (n < 10)std::cout << 1 << "\\n";
else if (n<100)std::cout << 2 << "\\n";
else if (n<1000)std::cout << 3 << "\\n";
if (n>99)std::cout << 3 << "\\n";
else if (n>9)std::cout << 2 << "\\n";
else std::cout << 1 << "\\n";
}

void 使用switch判断整数位数()
{
int n = 0, w = 0;
cin >> n;
if (n > 99)w = 3;else if (n > 9)w = 2;else w = 1;
switch (w)
{
case 3:std::cout << 3 << "\\n"; break;
case 2:std::cout << 2 << "\\n"; break;
case 1:std::cout << 1 << "\\n"; break;
}
}


