在c语言中如何确定一个数据的位数

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/19 19:37:12
在c语言中如何确定一个数据的位数

在c语言中如何确定一个数据的位数
在c语言中如何确定一个数据的位数

在c语言中如何确定一个数据的位数

除位法

#include<stdio.h>
main()
{
    int n,k=0;
    scanf("%d",&n);
    while(n)
    {
        n/=10;
        k++;
    }
    printf("%d",k);
}

对数法

#include<stdio.h>
#include<math.h>
main()
{
    int n,k;
    scanf("%d",&n);
    k=log(n)/log(10)+1;
    printf("%d",k);
}

char型数组法

#include<stdio.h>
#include<math.h>
main()
{
    char n[100],k;
    gets(n);
    for(k=0;n[k];k++)
    ;
    printf("%d",k);
}

数组转换法

#include<stdio.h>
#include<string.h>
main()
{
    char str[20];
    int n;
    scanf("%d",&n);
    sprintf(str,"%d",n);
    printf("%d\n",strlen(str));
}

您好,很高兴为您解答,流星不死为您答疑解惑

如果本题还有不懂的地方请追问,望采纳我的回答.

祝楼主学习进步.

上面的代码可以直接复制到编译器里,带换行.

在c语言中如何确定一个数据的位数 C语言里如何判断一个整形数据是几位数? 在C语言中怎么判断一个三位数或者四位数的十位数为0 C语言里面长整型起到什么作用?长整型的位数是怎么确定的?长整型一般在什么程序中起到作用, 在C语言中,输入一个四位数,求各位数字的平方和.其程序怎么写?问题如标题 C语言中提到数据的表现形式, 在C语言中怎样把两个十位数组合在一起,合成一个千位数 c语言中如何将一个四位的自然数拆开分别输出每一位上的数再将其组成一个反序的四位数并输出 C语言中如何把16个一位数合并成一个16位数.DSP的IO口接收的16个独立的外部数据分别是a15,a14.a0;把这16个数合并成一个数给变量data如何实现.不好意思 暂时没有财富值了 在C语言中123.345E-4是一个正确的实型数据 这个命题为什么错了?求解释 在一组数据中,如果一个数据严重偏大,那么它们的平均数会()中位数A.大于 B.小于 c.等于 D.无法确定 C语言中实数型数据的“有效数据”是什么意思? c语言如何判断一个元素是否在集合中 c语言中如何定义一个机构体数组,使得所有函数都能用,且在每个函数用过以后能保存其数据 C语言程序中,要检测一个数据是否在变化着,应该怎么实现? 在C语言中,给一个不多余5位的整数,1、求出他是几位数 2、分别打印出每一位数字 3、逆序排列这几位数.在C语言中,给一个不多余5位的正整数,要求:1、求出他是几位数;2、分别打印出每一位 请问在C语言中,如何将一个十进制数转化为八位二进制的数? 在C语言中,如何产生一个10*10的二维随机整数方针