无论我输入什么,C double 都为 0

标签 c double

#include<stdio.h>
int main()
{
    double a,b;
    scanf("%lf%lf",&a,&b);
    printf("%lf %lf",a,b);
    return 0;
}

无论输入如何,我从 printf 得到的结果都是 0.000000。我应该怎么做才能解决这个问题?这似乎是一些编译器或系统相关的问题,但我不知道它会是什么..提前致谢

最佳答案

%lf 不是有效的格式说明符。您应该将 %f 用于 double,或将 %Lf 用于 long double(如果支持)。

关于无论我输入什么,C double 都为 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27205940/

相关文章:

c - 使指针指向任何内容的最佳方法

java - 在 Java 中从 Double 转换为 String 的十进制错误

Java和J2ME计算比

c - 测试输入值类型的函数

将文本从终端复制到内存

c++ - 整数自动转换为 double 而不是 float

java - 如何将 6020494385.89982 字符串值转换为 double

java - 创建双数组列表的问题

C 库公共(public)头接口(interface)

c - 抛出异常 : Access violation writing location for Matlab Coder in Visual Studio