方法:逐步丢弃个位,计数器递增,直至该数更新为0结束。
以整数1234为例:
n | 丢弃个位(n整除10) | 计数器 | 更新n |
---|---|---|---|
1234 | 1234 / 10 = 123 | 1 | 123 |
123 | 123 / 10 = 12 | 2 | 12 |
12 | 12 / 10 = 1 | 3 | 1 |
1 | 1 / 10 = 0 | 4 | 0 |
0 | 结束 |
代码如下:
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
printf("请输入n:");
long long n;
int count = 0; //计数器
scanf("%lld", &n);
while (n!= 0)
{
count++;
n /= 10; //更新n
}
printf("%该数是%d位数",count);
return 0;
}