c语言中浮点double型数据的输入
001、double型数据的输入
[root@PC1 test]# ls test.c [root@PC1 test]# cat test.c ## 测试程序 #include <stdio.h> int main(void) { double vx; printf("vx = "); scanf("%lf", &vx); // double型数据的输入需要使用格式化字符串%lf printf("vx: %f\n", vx); return 0; } [root@PC1 test]# gcc test.c -o kkk ## 编译 [root@PC1 test]# ls kkk test.c [root@PC1 test]# ./kkk ## 运算测试 vx = 83.4 vx: 83.400000
.
002、float型数据的输入a
[root@PC1 test]# ls test.c [root@PC1 test]# cat test.c ## 测试程序 #include <stdio.h> int main(void) { float vx; printf("vx = "); scanf("%f", &vx); // 相对于double型数据的输入,float型数据输入可以使用格式化字符%f printf("vx: %f\n", vx); return 0; } [root@PC1 test]# gcc test.c -o kkk ## 编译 [root@PC1 test]# ls kkk test.c [root@PC1 test]# ./kkk ## 运算测试 vx = 34.3 vx: 34.299999
。
003、float型数据的输入是否可以使用格式化字符%lf?
[root@PC1 test]# ls test.c [root@PC1 test]# cat test.c #include <stdio.h> int main(void) { float vx; printf("vx = "); scanf("%lf", &vx); // float型数据尝试使用格式化字符%lf printf("vx: %f\n", vx); return 0; } [root@PC1 test]# gcc test.c -o kkk [root@PC1 test]# ls kkk test.c [root@PC1 test]# ./kkk ## 结果说明不可行 vx = 34.45 vx: -0.000000 [root@PC1 test]# ./kkk vx = 446 vx: 0.000000 [root@PC1 test]# ./kkk vx = 8.8 vx: -0.000000
。
double型数据的输入使用 %lf;
float型数据的输入使用%f;
。