m0_61828817 2021-11-17 13:11 采纳率: 70%
浏览 56
已结题

c语言文件类问题,编写程序读取并写两个文件

编写一个程序,读取一个包含数字列表的文件,然后写入两个文件,一个文件中所有数字都可以被三整除,另一个文件中包含所有其他数字。
麻烦写一下代码。写半天一直报错就把自己写的删了

  • 写回答

1条回答 默认 最新

  • CSDN专家-link 2021-11-17 13:18
    关注

    fopen打开文件,fgets逐行读取,转换为整数后,判断是否3的倍数,分别写入两个文件

    #include <stdio.h>
    int main(int args,char *argv[])
    {
        FILE *fp  = NULL;
        FILE *fp1 = NULL;
        FILE *fp2 = NULL;
        int d=0;
        char buf[50];
        if(args < 4)
            return 0;
        fp = fopen(argv[1],"r");
        fp1 = fopen(argv[2],"w");
        fp2 = fopen(argv[3],"w");
        if(fp == NULL || fp1 == NULL || fp2==NULL)
            return 0;
        while(fgets(buf,50,fp) != NULL)
        {
              fscanf(fp,"%d",&d);
              if(d%3==0)
                  fprintf(fp1,"%d\n",d);
              else
                  fprintf(fp2,"%d\n",d);
        }
        fclose(fp);
        fclose(fp1);
        fclose(fp2);
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 11月25日
  • 已采纳回答 11月17日
  • 创建了问题 11月17日

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器