c语言double类型的输入


double输入用 %lf ,而不能用 %f

今天在使用double类型输入时先用了 scanf("%lf", &a),结果以%f输出的时候都是0,以%g,%e输出似乎是最小的double值


12.3456789
0.000000
0.00000
6.952986e-3106.95299e-310

正确的代码如下


#include <stdio.h>

int main()
{
    double a;
    scanf("%lf", &a);//换成 %f 会无法正确输入

    printf("%f\n", a);
    printf("%.5f\n", a);
    printf("%e\n", a);
    printf("%g", a);
}


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM