设整型变量 a=2,则执行下列语句后,浮点型变量b的值不为0。()

A. b=1.0/a

B. b=(float)(1/a)

C. b=1/(float)a

D. b=1/(a*1.0)

答案:B. b=(float)(1/a)

解析:

  • 选项A:1.0/a中,1.0为浮点型,a为整型,运算结果为浮点型,因此b不为0。
  • 选项B:1/a中,1和a都是整型,运算结果为整型,即为0。然后将0强制转换为浮点型,因此b为0。
  • 选项C:(float)a将a强制转换为浮点型,1/(float)a运算结果为浮点型,因此b不为0。
  • 选项D:a*1.0中,a为整型,1.0为浮点型,运算结果为浮点型,1/(a*1.0)运算结果为浮点型,因此b不为0。

因此,只有选项B的结果为0,其他选项都将导致浮点型变量b的值不为0。

C语言中浮点型变量赋值,哪个选项不为0?

原文地址: https://www.cveoy.top/t/topic/o4bV 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录