c语言中,整型除整型得到浮点型,赋给整型变量,要强制转换吗?

另外可不可以直接赋给浮点型变量呢?

整型除以整型是取整除,得不到浮点型数据。比如int a=4,b=5则a/b=0,要想得到a/b=0.8必须把其中之一强制为float型,如(float)a/b=0.8或a/(float)b=0.8。把整型数直接赋给浮点型变量要告警,不算大错……
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-09-02
举例:
int a=3,b=5;
double c=0;
c=a/b; //此时c=3/5=0;
c=a/(double)b; 此时c=3/5.0=0.6;

说明:
整型除整型 只能得到整形,需要强制转换成浮点
当 除数或被除数有浮点时,自动转换成浮点本回答被提问者采纳
第2个回答  2012-01-02
可以赋值!!
但是要注意:整型除整型 只能得到整形!比如,3/6=0,你赋值给一个浮点也是0,不会是0.5
第3个回答  2019-04-28
如果直接(long)x
相当于是取整的运算。
只有
+0.5以后才是真正意义上的四舍五入。
比如
原来是
5.1—(5.1+0.5)取整=5
原来是
5.6—(5.6+0.5)取整=6
原来是
-5.1—(5.1-0.5)取整=-5
原来是
-5.6—(5.6-0.5)取整=-6
这样才是四舍五入
第4个回答  2012-01-02
如果希望得到浮点型值,那么需要强制转换

c语言中,整型除整型得到浮点型,赋给整型变量,要强制转换吗?
整型除以整型是取整除,得不到浮点型数据。比如int a=4,b=5则a\/b=0,要想得到a\/b=0.8必须把其中之一强制为float型,如(float)a\/b=0.8或a\/(float)b=0.8。把整型数直接赋给浮点型变量要告警,不算大错……

c语言中,整型除以整型得到浮点型,最后再赋给浮点型,怎么办
回答:举例: int a=3,b=5; double c=0; c=a\/b; \/\/此时c=3\/5=0; c=a\/(double)b; 此时c=3\/5.0=0.6; 说明: 当 整型除整型 只能得到整形,需要强制转换成浮点 当 除数或被除数有浮点时,自动转换成浮点

在C语言中的类型转化原则是什么?
就是当字符型和整型在一起运算时,结果为整型,如果整型和浮点型在一起运算,所得的结果就是浮点型,如果有双精度型参与运算,那么答案就是双精度型了。强制转换是这样的,在类型说明符的两边加上括号,就把后面的变量转换成所要的类型了。

C语言数据类型的自动转换和强制转换有什么区别
1.若参与运算量的类型不同,则先转换成同一类型,然后进行运算。2.转换按数据长度增加的方向进行,以保证精度不降低。如int型和long型运算时,先把int量转成long型后再进行运算。3.所有的浮点运算都是以双精度进行的,即使仅含float单精度量运算的表达式,也要先转换成double型,再作运算。4.char型...

C语言里为何将实型赋值给正型变量时要强制类型转换
将实型数据赋值给整型变量时,会自动截断取整(丢弃小数部分),因此可以不使用强制类型转换。例如 long int a;a=123456.7890123;则变量a的结果为123456

C语言的浮点型怎么转换为整型?
在C语言的世界里,将浮点型转换为整型有两招:强制类型转换和自动类型转换。首先,强制转换就像一把钥匙,通过(类型说明符)(表达式)的形式,直接将浮点数的值转变成所需的整型。比如,(double) a 就是将a转换为双精度浮点,(int)(x+y) 则将两个数相加后的结果强制变为整型。其次,自动类型转换...

c语言强制类型转换
C语言中的强制类型转换是一种显式地改变数据类型的方式。这种转换通常在需要将一种类型的数据转换为另一种类型时使用。在C语言中,强制类型转换的语法是使用括号将目标类型包围起来,然后将要转换的变量或值放在括号后面。例如,将整型变量转换为浮点型可以使用如下语法:float myFloat = myInt;其中,myInt...

c语言中可使用强制转换吗?
可以使用强制转换,其一般形式为:(类型说明符) (表达式) 其功能是把表达式的运算结果强制转换成类型说明符所表示的类型。例如: (float) a 把a转换为浮点型,(int)(x+y) 把x+y的结果转换为整型。这种方法显然对浮点型数据的精度会有影响,且注意最终输出的形式不同结果也是不同的,若要保留数字...

c语言中整型和浮点型混合运算的结果是什么类型
、int(整型)转为unsigned(无符号整型)转为long(长整型)转为(双精度浮点类型)。因此,c语言中整型和浮点型混合运算,只能是整型和浮点型同时强制转换为相同的double型(双精度浮点类型)。如两个float型数参加运算,虽然它们类型相同,但仍要先转成double型再进行运算,结果亦为double型。

C语言的强制类型转换运算符
强制类型转换是把变量从一种类型转换为另一种数据类型。例如,如果您想存储一个 long 类型的值到一个简单的整型中,您需要把 long 类型强制转换为 int 类型。您可以使用强制类型转换运算符来把值显式地从一种类型转换为另一种类型。

相似回答