Dev-C++4.9.8.0中的fscanf(fp,"%10.5f", &ret)不能正确读出我的浮点数据,但读整数正确。
int ret = 0;
double doub=0;
char filename[40];
FILE* fp;
.
.
.
fp = fopen(filename, "rt");
if (!fp){
cout << " file not exist.\n";
return 0;
}
for(i=0; (i<N) && (!feof(fp)); i++){
// 第一条语句正常,第二条语句不对了,为什么啊?
fscanf(data_file,"%d", &ret);
fscanf(data_file,"%10.5f", &doub);
}
文件中的数据按两列存放,以空格和回车换行分隔:
10 4
86 3.5
问题点数:0、回复次数:5Top
1 楼sharkhuang(走吧走吧!人总会慢慢长大~)回复于 2004-12-04 13:28:49 得分 0
试试fscanf(data_file,"%f", &doub);
Top
2 楼zhangfjj(小张)回复于 2004-12-04 14:26:12 得分 0
fscanf(data_file,"%10.5f", &doub);
=====
楼上说的应该是对的,在输入数据时,不要企图用格式符去指定数据的精度,这是没有用的!Top
3 楼williamVII(spread)回复于 2004-12-04 16:27:49 得分 0
nodTop
4 楼pathmoon(月影)回复于 2004-12-09 00:31:20 得分 0
还是不行啊!
我换成你们建议的格式了依旧不对,而且现象和原来的一样 -_-
Top
5 楼great_chenliang(Eric)回复于 2004-12-09 00:55:47 得分 0
你读出来的是什么呢?Top




