当前位置: 代码迷 >> C语言 >> 输入一个不大于10的数字,输出它的位数.
  详细解决方案

输入一个不大于10的数字,输出它的位数.

热度:116   发布时间:2007-04-24 17:02:25.0
输入一个不大于10的数字,输出它的位数.

输入一个不大于10的数字,输出它的位数.
#include<stdio.h>
#include<math.h>
void main()
{
int i,m; float l;
scanf("%d",&m);
l=pow(10,i);
for(i=1;i<=10;i++)
if(int(m/l)==0)
break;
printf("%d",i)
}
那位大虾帮看下哪里编错了哇....


----------------解决方案--------------------------------------------------------
#include<stdio.h>
#include<math.h>
void main()
{
int i,m,l;
scanf("%d",&m);

for(i=1;i<=10;i++)
{
l=(int)pow(10,i); //写到循环里面来,在外面I是什么都不知道
if(m/l==0)
break;
}
printf("%d\n",i);
}
----------------解决方案--------------------------------------------------------
谢谢2楼的我试了下,没错,多谢...
----------------解决方案--------------------------------------------------------

用字符串形式输入,直接输出它的长度(strlen())就可以.


----------------解决方案--------------------------------------------------------
或者直接

while(n/=10)
{
count++;
}
就可以.

----------------解决方案--------------------------------------------------------

谢谢我也学会了


----------------解决方案--------------------------------------------------------
  相关解决方案