空降兵携行具:不用循环怎么编一个测试一个5位以内的数的位数

来源:百度文库 编辑:查人人中国名人网 时间:2024/05/05 19:09:44
用C语言不用循环怎么编一个测试一个5位以内的数的位数

楼上的错了,b是int
如果没有5位,最后b不就不是int 型
还不如
if(b-1>=0) n=1;
if(b-10>=0) n=2;
if(b-100>=0) n=3;
if(b-1000>=0) n=4;
if(b-10000>=0) n=5;

请问if是什么语句??也是循环语句????

void check(int num)
{
switch(num)
case... return 1;break;
case... return 2;break;
....
}

既然是5位以内数那就用5个if,如下:
#include<stdio.h>
void main()
{
int b,n=1;
scanf("%d",&b);
b/=10;
if(b>0)n++;
b/=10;
if(b>0)n++;
b/=10;
if(b>0)n++;
b/=10;
if(b>0)n++;
b/=10;
if(b>0)n++;
printf("%d\n",n);
}