请教个关于C语言文件操作的问题

我有两个文本文件,其中一个文本文件A:坐标数量大小属性5086.55210.531165086.55225.531765086.55240.5311.565086.552... 我有两个文本文件,其中一个文本文件A:
坐标 数量 大小 属性
5086.55210.5 3 11 6
5086.55225.5 3 17 6
5086.55240.5 3 11.5 6
5086.55245.5 3 10 6
5086.55250.5 3 10 6
5086.55260.5 3 12.5 6
另一个文件B:
坐标 地点 时间 顺序
5086.55210.5 4 1 6
5086.55225.5 4 1 6
5086.55240.5 4 11 6
5086.55245.5 4 1 6
5086.55250.5 4 1 6
5086.55260.5 4 12 6
将A,B文件,坐标相同的项,后边的数据,大小,属性,地点,时间,顺序重新输出大一个新的文件C中,并且头部汉字也同时输出。
请问,这样的问题,解决的思路是什么?用什么函数做好?当然,有简单的代码提示也非常感谢!初学C语言,多谢各位大侠的指点啊!!!
展开
 我来答
沧海雄风2009
2012-08-01 · TA获得超过1.1万个赞
知道大有可为答主
回答量:8525
采纳率:79%
帮助的人:3421万
展开全部
纯给你说思路 估计也没多大用处

我还是写了代码出来 结合代码给你说吧

A B 中坐标相同的项后面的数据 那么每当一个相同 就会有两组数据

但是实际上你给的这两个文件内容完全一样

那岂不是把两个文件后面的数据全部输出出来就OK了吗?

你出题的思路 或者你的描述与问题 没办法帮你解答

如果两个文件内容不完全相同的话 可以用双循环 读取比较 遇见相同项

就将后面的数据输出到一个文件C中 当然 在双循环之前 先往C文件中写入中文的头信息

等你更正了你的描述后 我再来帮你看这个问题 编码其实很简单 你先把思路理好
追问
多谢您的关注:A,B文件中的坐标不全一样,可以这么说,A文件的坐标包含B文件的坐标。您说的,往C文件中写入中文的头信息,以及后边的比较输出,我都不太清楚,目前就对一些基本的文件打开,数据单独比较有点认识,多谢你,多多指教
追答
我说了要给你代码的
#include
#include
main()
{
int AS1=0,AS3=0,BS1=0,BS2=0,BS3=0;
float AS2=0;
char lineA[100]={0},lineB[100]={0},AS0[13]={0},BS0[13]={0};
FILE *fpA,*fpB,*fpC;
fpA = fopen("A.txt","r");
fpC = fopen("C.txt","w");
fprintf(fpC,"数量\t大小\t属性\t地点\t时间\t顺序\n");
fgets(lineA,sizeof(lineA)-1,fpA);
while ( fscanf(fpA,"%s %d %f %d\n",AS0,&AS1,&AS2,&AS3)!=EOF )
{
fpB = fopen("B.txt","r");
fgets(lineB,sizeof(lineB)-1,fpB);
while ( fscanf(fpB,"%s %d %d %d\n",BS0,&BS1,&BS2,&BS3)!=EOF )
{
if (strcmp(AS0,BS0)==0)
{
fprintf(fpC,"%d\t%.1f\t%d",AS1,AS2,AS3);
fprintf(fpC,"\t%d\t%d\t%d\n",BS1,BS2,BS3);
}
}
fclose(fpB);
}
fclose(fpA);
fclose(fpC);
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式