fscanf函数读取文本数据总是出错

l287343459 l287343459 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
文本数据可以读出来,但顺序总是乱的,比如我的数据是
0.632919 2.843643 1.025223 55 17 11 9
0.636337 2.841873 1.024307 20 14 9 6
0.635269 2.842697 1.023605 24 15 10 7
0.635330 2.842911 1.024857 52 15 10 7
0.632919 2.843643 1.025223 55 17 11 9
0.636337 2.841873 1.024307 20 14 9 6
0.632919 2.843643 1.025223 55 17 11 9
0.635330 2.842911 1.024857 52 15 10 7

读出来就变成了
0.632919 2.843643 55 55
0.636337 2.841873 52 20
0.635269 2.842697 1.023605 24
0.635330 2.842911 1.024857 52
0.632919 2.843643 1.025223 55
0.636337 2.841873 1.024307 20
0.632919 2.843643 1.025223 55
0.635330 2.842911 1.024857 52
六行数据则不会出错,行数越多则顺序越乱……
这是我的源代码:
#include "stdafx.h"
#include "stdlib.h"
#include "stdio.h"
#include"windows.h"
FILE *fp;
int main()
{
int i = 0, j = 0;
float x1[100000], y1[100000], z1[100000], fsl1[100000];
errno_t zhizhen;
zhizhen = fopen_s(&fp, "F:\\001.txt", "r");
if (zhizhen != 0)
printf("文件不能打开\n");
for (; fgetc(fp) != EOF; i++)
fscanf_s(fp, "%f%f%f%f", &x1[i], &y1[i], &z1[i], &fsl1[i]);
for (; j <i; j++)
printf("%f %f %f %f\n", x1[j], y1[j], z1[j], fsl1[j]);
getchar();

}
求教各位大大这是怎么回事啊
...全文

相关推荐

评论 8
收藏 已收藏
分享
返回顶部
l287343459
C++ 语言 65,214 成员 250,514 内容