xjgcyq1 2017-05-21 07:28 采纳率: 100%
浏览 17090
已采纳

c语言 读入txt数据文件存入数组,并输出

输出文本11.txt
1,2,5,3,66,32,11,22,
34,55,8,5,6,5,4,43,
36,35,34,42,23,43,23,43,
...................
存入数组再输出保存22.txt
01,02,05,03,
66,32,11,22,
34,55,08,05,
06,05,04,43,
36,35,34,42,
23,43,23,43,
......................

  • 写回答

4条回答 默认 最新

  • shen_wei 2017-05-22 09:36
    关注
     struct Data
    {   
        int nRow[8];
    };
    
    
    
    
    int main()
    {  
        Data data[3];
    
        FILE *fp = fopen("1.txt","rb");  
        if (fp == NULL)
        {
            printf("can not open file!\n");
            exit(0);
        }
        for(int i = 0;i < 3;i ++)
        {
            int nRes = fscanf(fp,"%d,%d,%d,%d,%d,%d,%d,%d,",&data[i].nRow[0],&data[i].nRow[1],&data[i].nRow[2],
                &data[i].nRow[3],&data[i].nRow[4],&data[i].nRow[5],&data[i].nRow[6],&data[i].nRow[7]);
            if (nRes == -1)
            {
                fclose(fp);
            }
        }
        fclose(fp);
    
        fp = fopen("2.txt","w+");  
        if (fp == NULL)
        {
            printf("can not open file!\n");
            exit(0);
        }
    
        for (int i = 0;i < 3;i ++)
        {
            char czBuf[100] = {0};
            sprintf(czBuf,"%02d,%02d,%02d,%02d,\n%02d,%02d,%02d,%02d,\n",data[i].nRow[0],data[i].nRow[1],data[i].nRow[2],
                data[i].nRow[3],data[i].nRow[4],data[i].nRow[5],data[i].nRow[6],data[i].nRow[7]);
    
            fwrite(czBuf,strlen(czBuf),1,fp);
        }
        fclose(fp);
    
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 树莓派与pix飞控通信
  • ¥15 自动转发微信群信息到另外一个微信群
  • ¥15 outlook无法配置成功
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题