① c语言怎样判断一个整数有几位数
代码岩虚如下:
#include<stdio.h>
int main()
{
int a,b;
int i;
printf("请输入一个数字:");
scanf("%d",&a);
b=a;
for(i=0;a>1;i++)
{
a=a/10;
}
printf("%d是%d位数 ",b,i);
}
(1)c语言有多少个数位扩展阅读:
思路详解:
在C语言中,经常会用到以整数相除来确定一个整形数字的每一位的具体数字是多少,同理,此处可用整数相除来判断一个数的位数。
首先,使用scanf函数获取这个数字的值,且赋给变量b,作一个备份。
接着,确定核心思路为,当一个数整除10,第一次结果为1时,这个数是一个个位数。因而,以其作为循环州罩内的主体。
得到了for(i=0;a>1;i++) 粗迹燃a=a/10; 这样的代码,最后,输出结果即可。
② C语言怎么计算一个数有多少位
c语言怎么计算一个数有多少位的方法:
1.
输入待计算的数x
2.
定义一个数位的变量int
n=0;
3.
循环,x每次缩小10倍,n=n+1;
最终x会变成0,循环结束
4.
输出n值
代码:
#include
void main()
{
int x,m,n=0;
printf("input x: ");scanf("%d", &x );
m=x; //备份原数,供输出用
do {
n++;
x /= 10 ;
} while( x>0 );
printf("%d 是%d位数\n", m, n );
}
③ 求教C语言,从键盘输入一个整型数据(int型),编写程序判断该整数共有几位,并输出包含各个数字的个数。
这个用数组的方式来实现比较好,包括后面的输出
#include<stdio.h>
#include<stdlib.h>
main()
{
intN,n,b,i,c[]={1,2,3,4,5,6,7,8,9},d[9]={0};
intr=0;
printf("Pleaseenterthenumber: ");
scanf("%d",&n);
N=n;
n=abs(n);
while(n>0){
b=n%10;
for(i=0;i<9;i++){
if(b==c[i])
d[i]++;
}
n=n/10;
r++;
}
printf("%d:%dbits ",N,r);
for(i=0;i<9;i++){
if(d[i]!=0)
printf("%d:%d ",c[i],d[i]);
}
system("pause");
}
④ C语言字符数占几个字节,又是多少位。
一个字符一个字节
共8位(bit)
可以用sizeof(类型)来测试
⑤ 目前常用C语言的一个整型变量的存储容量为多少个字节
一般来说,标准C的整型变量是32位,也就是4字节。在某些编译平台上,整型的长度则取决于硬件结构,对于32位处理器是32位4字节,对于64位处理器是64位8字节。
⑥ C语言中整型数据的有效位数是多少
1、从二进制的角度来看整数的有效位数,要从整数的编码说起,有符号整数编码包括原码、反码和补码三种常规编码方式,原码表示即最高位为符号位,0表示正数,1表示负数,如果以8位二进制位来表示,符号位要占1位,所以有效位数7位。
要获取整型类型在当前编译环境中所占的位数,可以使用sizeof运算符。
#include<stdio.h>
intmain()
{
printf("sizeofint:%d
",sizeof(int));
return0;
}
2、如果要计算一个整数中的有效位数,可以不断的整除10求出来。如下代码:
#include<stdio.h>
inthow_many_int(ints)
{
inti=0;
while(s!=0)
{s/=10;i++;}
returni;
}
intmain()
{
inttest;
do
{
printf("输入整数:");
scanf("%d",&test);
printf("有%d位
",how_many_int(test));
}while(test!=~0);
return0;
}
说明:输入数值超出int所表示的范围,编译器会对输入数进行取模操作。输出-1结束循环,退出程序。
⑦ c语言int、float、long、char各有多少位
1、在32位系统中:
char(1)字节
short(2)字节
int(2)字节
long(4)字节
char*(4)字节
int*(4)字节
int**(4)字节
2、在64位系统中:
char(1)字节
short(2)字节
int(4)字节
long(8)字节
char*(4)字节
int*(4)字节
int**(4)字节
(7)c语言有多少个数位扩展阅读
在C++中short占2字节,int、float、long都占4字节,double占8字节。
指针长度和地址总线有关。因为指针记录的就是一个地址,那么32位的就是4字节,64位的就是8字节。
char占1字节,short占2字节,int、float、long都占4字节,double占8字节,任意类型的指针都占4个字节。
⑧ C语言怎么计算一个数有多少位
C语言怎么计算一个数有多少位的方法:
输入待计算的数x
定义一个数位的变量int
n=0;
循环,x每次缩小10倍,n=n+1;
最终x会变成0,循环结束
输出n值
代码:
#include <stdio.h>
void main()
{
int x,m,n=0;
printf("input x: ");scanf("%d", &x );
m=x; //备份原数,供输出用
do {
n++;
x /= 10 ;
} while( x>0 );
printf("%d 是%d位数\n", m, n );
}
⑨ C语言求整数长度或多少位
十进制数字个数 和长度 有多种方法 算得。
下面用两种方法计算。负数有个符号位,长度比位数多 m=1。
占内存的大小用sizeof(int) 可得,通常 32位机为4字节,64位机为8字节。
例如:
#include <stdio.h>
int main(){
int a=123456;
int n,m=0;
char s[60];
if (a<0) m=1;
sprintf(s,"%d",a);
n = strlen(s);
printf("a has digit %d length %d\n",n-m,n);
n=0;
while (1){
a = a/10;
n++;
if (a==0)break;
}
printf("a has digit %d length %d\n",n,n+m);
printf("int has %d bytes\n",sizeof(int) );
return 0;
}