在printf函数中,输出float和double类型的数据,使用%f格式输出。但是,在scanf函数中,读取输入float和double类型的数据时,需要注意:
(1) float类型数据,使用 %f 格式输入;
(2) double类型数据,使用 %lf格式输入;在%和f之间添加字母“l”;
程序测试例子如下:
程序运行结果如下:
可以看到,在编译的时候,就已经提示“warning 警告”:第12行代码,即:
scanf("%f", &b);
第二个参数b是double类型,但是,格式控制输入字符串使用‘%f’表示float类型,所以,提示警告。 输入数据的时候,float类型,使用%f格式输入。double类型,应该使用%lf格式输入。
那么,我们在输入数据的时候,也可以看到,在第二次输入时,输入1.2,输出0.000000,运行出错了。所以,给double类型变量输入数据的时候,必须使用%lf格式,输出的时候,可以使用%f格式。
更多的交流可以访问:www.mylinux.vip 加QQ:1523520001,微信:13926572996,备注:linux编程;
学习、分享更多的linux C/C++ 编程知识。