scanf可以用lf吗,scanf那里如果用f就这样不对用lf就输出正确05 本人网上自学

1,scanf那里如果用f就这样不对用lf就输出正确05 本人网上自学f就是float,lf就是long float , 所以当你要输入float类型的数值时就用%f,当你要输入double类型数值时就用%lfscanf("%f",&a);a的类型是floatscanf("%lf",&a); a的类型是double
2 , 求问为什么不对scanflf i细节问题#include int main() { double i; scanf("%lf ",&i);//出错了 printf("%lf",i); return 0; }scanf("%lf ",&i);表面上看没有问题 , 但事实上,%lf后面多了一个空格 所以输入时,要输入"1 "(注意有空格)不是"1" 修改方法极为简单,删除空格即可 #include int main() { double i; scanf("%lf",&i); printf("%lf",i); return 0; }另外 , printf中为了美观 , 应该加入"\n" #include int main() { double i; scanf("%lf",&i); printf("%lf\n",i); return 0; }
3,C语言 scanf函数中使用lf的问题编译器问题因为我是vs2012,所以没有问题 。原因是编译器在编译的时候没有链接浮点数相关的库,可以在定义变量的时候初始化一下 。double a=0.0,......像这样,然后应该就ok了 。这个问题嘛,你这样一试:把double a,b,s,h;中的a改成a=0.0 , 即写成double a=0.0,b,s,h; 。懊,那你就试试看可能函数库错了吧呵呵你重新编译一下或者新建一个工程试试 。还有问题,那再次调试:按下F10,再按下Alt+8查看反汇编,把反汇编贴上来看看 。scanf("%lf %lf",&a,&b);printf("%lf %lf",a,b); 注意程序格式书写,必须用英文ascii 码,例如 空格 , 也必须是西文空白(中文半角码),不能是中文空白(全角码) 。应可拍入 3 4,scanf 能转为 double【scanf可以用lf吗,scanf那里如果用f就这样不对用lf就输出正确05 本人网上自学】

    推荐阅读