回 帖 发 新 帖 刷新版面

主题:[讨论]c语言怎么多个文件读写,求改进代码,(绝对可看懂!)

现有一个E盘下的文件aa1.txt,里面数据如下:
num english  math
1    78        90
2    80        76
3    90        80
4    65        87
想在其基础上创一个bb1.txt文件,里面数据如下:
num grade   english   math   avg(平均分)
1     1       78        90   
2     1       80        76
3     1       90        80
4     1       65        87

这个可以实现。
但如何实现多个这样的文件的读写呢?例如我有aa1.txt,aa2.txt的文件要分别变为bb1.txt,bb2.txt的文件。


aa1.txt变为bb1.txt,我有个单文件读写代码如下:

{
    FILE*inp;
    FILE*out;
    
    inp=fopen("e:\\aa1.txt","rt");
    
   out=fopen("e:\\bb1.txt","wt");
    char str[256];
     int num,english,math,grade;
     float avg;
    
   
   fgets(str,256,inp);
   fprintf(out,"num\t enlish\t math\n");
   
    while(!feof(inp))
    {
        
       fscanf(inp,"%d%d%d\n",&num,&english,&math);
        avg=(enlish+math)/2;
       fprintf(out,"%d%d%d%d%f\n",num,grade,english,math,avg);
                    
                    
    }
    fclose(inp);
    fclose(out);
    system("pause");
    
    
}

回复列表 (共7个回复)

沙发

不明白你说的话

板凳

[quote]不明白你说的话[/quote]

就是我可以读写一个文件,可以多个文件读写吗?
比如我要同时读三个文件,再分别同时写入到另三个文件中。

3 楼

[quote][quote]不明白你说的话[/quote]

就是我可以读写一个文件,可以多个文件读写吗?
比如我要同时读三个文件,再分别同时写入到另三个文件中。[/quote]
你说的是不是一起读写好几个文档,然后在一起写入另外的三个文档中并且能一一对应是吗

4 楼

循环呗,aa1--bb1
aa2--bb2
aan--bbn
int n;
int i;
for(i=1; i<=n; ++i)
{
.....
}

5 楼


quote]
你说的是不是一起读写好几个文档,然后在一起写入另外的三个文档中并且能一一对应是吗[/quote]

是的,是这个意思。请问如何弄?

楼上这个循环。。。文件如何循环啊,请详细些,还有,可否直接读一个文件夹。
谢谢!

6 楼

请查阅_findfirst和_findnext函数

7 楼

求详细代码,我给分!

我来回复

您尚未登录,请登录后再回复。点此登录或注册