问答详情
源自:2-8 自动类型转换

求大佬解释

#include<stdio.h>
int main()
{
 int x;
 scanf("%d",&x);
 printf("%f",x);
 return 0;
}

为啥不能转换了

我想的是输入比如输入一个5,输出是5.000000结果输出是0.000000

为啥?


提问者:孤独的血小板 2018-10-17 19:44

个回答

  • 慕运维9558582
    2018-10-17 20:51:13
    已采纳

    printf函数中x变为(double)x

  • qq_O_djsuwQ
    2018-10-17 20:51:34

    #include<stdio.h>
    int main()
    {
     double x;
     scanf("%lf",&x);
     printf("%f",x);
     return 0;
    }
    int是整数型,不能输出小数,应该用double型来解

  • qq_O_djsuwQ
    2018-10-17 20:51:32

    #include<stdio.h>
    int main()
    {
     double x;
     scanf("%lf",&x);
     printf("%f",x);
     return 0;
    }
    int是整数型,不能输出小数,应该用double型来解

  • 慕桂英8494258
    2018-10-17 20:48:28

    把 printf("%f",x);换成printf("%f",(double)x);  亲测可用。