用VC++将文本文件中的一列读入数组

来源:百度知道 编辑:UC知道 时间:2024/05/17 05:47:33
文本中数据格式如下:
>>>>>Begin Data<<<<<
345.41 0.000
345.62 0.000
345.84 1286.000
346.05 1271.000
346.27 1295.000
346.48 1298.000
346.70 1283.000
346.91 1289.000
...
要求:忽略掉开头的字符(字符有可能是多行),从下面的两列数据开始读入;
将第二列数据存入一个数组,将数组中的每一个数据都除以4后,保存为一个新的文本文件.
请大侠们给出整个程序,多谢
补充:开头的字符有1行或多行,以1行为例吧.每行数据的两个数据间是以TAB键分隔

前面的字符有什么特征?或者如何跟下面的两列数据区分开来?说清楚吧
-----------------------------------------------------------
#include "stdio.h"
#include "iostream.h"
#include "string.h"
#include "stdlib.h"

//以下两个参数可以根据实际需要自己修改
#define N 100 //假定最多只有100列数据
#define M 1 //要跳过的行数,此处为1

void main()
{
FILE *f;
int i=0, j=0;
float store[N][2];
char str[100];
cout<<"请输入待打开文件名"<<endl;
cin>>str;
f=fopen(str,"r");//打开文件
if(f==NULL)
{
cout<<"找不到文件"<<endl;
return;
}//如果文件没有打开就退出报错

for(i = 0; i < M; i++)
{
fgets(str, 100, f);
}

while(!feof(f) && j<100)//检测是否读到了文件结尾或才超过一面行
{
fscanf(f, "%f\t%f", &store[j][0], &store[j][1]);
//cout<<store[j][1]<<endl;
//如果需要将数据同时在屏幕上输出请将上面一行前面的"//