一个C语言关于实型变量的问题!

为什么带符号实型变量的最小值是负的2的15次幂?不是应该是二进制的15个1么,这不是2的15次幂减一么?

使用补码表示的原因。
最小的是1000000000000000B = -2^15
你说的各位全是1,它的值是-1,是最大的负数。
温馨提示:内容为网友见解,仅供参考
第1个回答  2007-11-05
符号占了第16位,所以其余15位都是1,表示的是 -2^15
第2个回答  2007-11-05
带符号实型变量的最大值:
011111111111111………………2^15-1=32767
最小值:
100000000000000………………-2^15=-32768

一个C语言关于实型变量的问题!
最小的是1000000000000000B = -2^15 你说的各位全是1,它的值是-1,是最大的负数。

c语言实型变量问题
在C编译系统中,系统默认所有的的浮点型数据为双精度的(也就是double型)。你把一个双精度的数据赋值给一个单精度数据好比把实形数据赋值给整形数据。这样系统就会进行适当的取舍,就会影响到你数据的精度。最终形成了你所说的现象。

C语言中实型变量的问题
整型数可以自动转换为实型,而实型转换为整型就要进行强制转换,将丢掉小数位,强制转换的方法是(int)x;pow(x,y)是一个内联函数,编译的时候进行替换操作,所以要进行计算一定要用一个中间变量来存储这个结果,不能直接打印pow(...)的结果 ...

C语言问题 实型变量问题
1 其实%f%lf都一样,都是输出double类型的。2 当参数即上面的4.0\/3.0被传递到printf时,float总是会被转化成double类型的,然后才能背printf正确输出。3 无论是%f还是%lf,只要不指定 精确度和宽度 ,默认的输出都是 小数点 后跟6位,float和double类型只是决定那后6位有几个是有效数字...

C语言实型变量, 的一些问题。
因为写成1\/3系统会按照整型变量去计算,因此1\/3=0,乘上3后还是为0。而按照%f浮点型输出,故输出结果为0.000000

C语言的数据的实型变量问题
我谈一下个人观点:你想 float占4个字节,double占8个字节。如果一个小数据用大数据的范围去存是不是会对空间照成浪费?而有效数字在大多数情况下没那么重要,但要求严格的数据,需要精确到小数点后那么多位的就有实际意义了!现在你若实在不是很理解也没什么,你只要知道你根据需要定义变量类型就可以...

求C语言高手编写程序:为实型变量X输入一个值后,输出X的值、X的平方根...
main(){ double x;double v1,v2,v3,v4;printf("Please input x:\\n");scanf("%lf",&x);printf("Your input is: %g\\n",x);v1=sqrt(x);v2=x*x;v3= pow(x,1.0\/3);v4 = v2*x;printf("The results are: %lf %lf %lf %lf\\n",v1,v2,v3,v4);return 0;} 例如,输入8...

c语言作业,设x,y是实型变量,计算并输出下列函数值
include <stdio.h> include <math.h> int main(){ float x = 0.0,y = 0.0;printf("请输入x值为:");scanf("%f",&x);if(x >= 0)y = exp(3*x)+3;else y=2*x - 3;printf("y=%f",y);return 0;}

用C语言编写程序,从键盘输入一个不小于0的实型变量x,计算并输出函数fx...
void main(){ int x;float fx;start:printf("请输入x值(x值大于或等于0):");scanf("%d",&x);if(x<0)goto start;fx=x*x+1.0\/x+sqrt(x);printf(fx=%.3lf\\n",fx);}

C语言中,如果a为实型变量,能否用if(a==0),为什么
可以用,只是经过计算后,一般很难保证a绝对等于0。

相似回答
大家正在搜