有关int float 菜鸟问题!C语言

来源:百度知道 编辑:UC知道 时间:2024/05/17 16:00:51
有关int float 菜鸟问题!
main()
{int a=13,i;
for(i=1,i<=10,i++)
a=a*(1+0.2%)
一个简单的人口计算的问题
但问题是 int 在C中有范围 在小数点后多少就不能够定义
float的范围比int 大但也有范围
我想问的就是int float 分别可以定义多大的范围!且是根据什么原理得到的??

在C语言中,这种语法是错误的.
a 是int 类型,而 a = a*(1+0.2%) 这里是把a 当做一个float 类型.
int 是整型. 占2个字节,也就是16位.因为是有符号整型,所以范围在
-32768~32768之间.
float 是浮点型,占4个字节,范围在-3.4*10的38次方~3.4*10的38次方 之间
小数点后有效位为7位..

int是整数,由16位字节表示(机器不同字节不同),不可以表示小数,无误差;
float是浮点数,有若干字节(记不清了)表示,分两部分表示,整数部分、小数部分,但各部分的位数不定长,所以叫浮点数,有误差。
main()
{float a=13;
int i;
for(i=1;i<=10;i++)
a=a*(1+0.2/100);
......