问个很菜的C语言的问题
来源:百度知道 编辑:UC知道 时间:2024/06/25 05:55:56
#include <stdio.h>
#include <stdlib.h>
int main ()
{
float x=1/2;
printf("%f\n",x);
system("PAUSE");
return 0;
为什么这个输出是0.000000而不是0.500000呢?这个怎么改
#include <stdlib.h>
int main ()
{
float x=1/2;
printf("%f\n",x);
system("PAUSE");
return 0;
为什么这个输出是0.000000而不是0.500000呢?这个怎么改
1/2计算的结果会按int类型计算即为0,然后结果0在转换成float.
根据隐式转换
改成float x=1.0/2;这样就可以了.
即把1改为1.0就行了.
整型与整型进行运算 其得数也为整型 这时已经为0了 然后将0赋给float 依然为0 将1改为1.0就行了
float x=1.0/2;
就可以了!