c语言中double型数据的输入
来源:互联网 发布:传智播客c语言视频 编辑:程序博客网 时间:2024/05/17 04:16
今天练习在linux下编程C语言,写了一个很小的示例程序,发现结果不能正常显示。起初以为是系统差异的问题就把代码复制到了vc++下运行结果仍然不能正确显示。于是经过多番修改调试将错误确定到了double型数据的输入与输出上。于是专门写了一个代码检测错误原因。代码如下:
#include<stdio.h>
int main()
{
double in;
printf("请输入\n");
scanf("%f",&in);
printf("%f\n",in);
return 0;
}
输入数字1后理想输出应为1.000000(printf不加条件%f默认含6位小数),但得到的结果却是一大段数字,结果明显与预期不符,查看代码后感觉没有错误于是上书上翻看double型数据以及输入和输出函数,找了一段时间书上并没有标注说double型数据的输入与输出有什么特别,上网百度后发现scanf对于float类型必须用%f,double必须用%lf
对于scanf,情况就完全不同了,它接受指针,这里没有类似的类型提升。(通过指针)向float存储和向double存储大不一样,因此,scanf区别%f和%lf。
经过修改后发现结果能正常显示结果。事后又去翻书发现书上的确有这样的一句话,看来还是自己平时学习不够细致,基础不够扎实。
0 0
- c语言中double型数据的输入
- c语言中double类型数据的输入和输出
- C语言中double型数据格式化输入输出的转换字符(占位符)
- C语言读double型数据
- c语言:数据的输入
- C语言的那些事——sqrt()函数 和 double型数据的“%lf”
- C语言读取CSV中的数值型数据(double) fscanf
- C语言数据的输入与输出
- c语言中double转int的舍入误差
- C语言中float和double的精度
- C语言中float与double的详细解说
- 关于c语言中double指针的初始化问题
- java中double型数据的加减乘除
- java中double型数据的加减乘除
- java中double型数据的加减乘除
- c语言中计算int,float,double,char四种数据类型所能表示的数据范围
- C/C++语言中计算int,float,double,char四种数据类型所能表示的数据范围
- C语言中fscanf函数读取double型浮点数的问题
- 并查集树数据结构hdu1325
- 抽象类和接口的区别,使用场景
- 横滨中文离线地图App上线
- 大一之路
- 优化Android Studio/Gradle构建
- c语言中double型数据的输入
- vc 关闭对话框几种方法
- 设置、修改Linux时区
- 虚拟机下centos6的网络IP配置
- Android开发笔记-----activity简述
- 编译时异常和运行时异常的小细节
- poj 1860 Currency Exchange(Bellman-Ford 改)
- Bipartite Graph
- TCP编程,Socket通讯