永发信息网

C语言 计算位数。给你一个整数n(0≤n<100000),请计算出这个数的位数。

答案:3  悬赏:30  手机版
解决时间 2021-03-20 21:00
  • 提问者网友:孤凫
  • 2021-03-20 15:57
C语言 计算位数。给你一个整数n(0≤n<100000),请计算出这个数的位数。
最佳答案
  • 五星知识达人网友:行雁书
  • 2021-03-20 16:15
//我是用递归
#include
int i=0;
void main()
{
int n;
int weishu(int);
if(n!=0)
printf("%d\n",weishu(n));
else
printf("0");
}
int weishu(int n)
{
if(n==0)
return i;
else
{i++;
n/=10;
return weishu(n);
}
}
全部回答
  • 1楼网友:大漠
  • 2021-03-20 17:30
可以用循环

int n=10989;
int bit = 0;
int index = 1;
while (n/index!=0)
{
index = index*10;
bit+=1;
}
大致如此
  • 2楼网友:山有枢
  • 2021-03-20 16:43
#include
void main()
{
int i=1;
long n;
printf("请输入你要计算位数的值:");
scanf("%d",&n);
while(n>=10)
{
n/=10;
i++;
}
printf("这个数是 %d 位的",i);
}追问long n;是什么追答long 是长整型变量声明,考虑兼容16位计算机系统,你要求的数据在0-100000之间,32位机器可以用int追问为什么没有 return 0;追答因为main函数为void
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯