在C编程中,当将数据写入.txt文件时如何移动到下一行

时间:2017-05-21 05:01:22

标签: c

我只想将序列打印到文本文件中。它应该看起来像

A
AB
ABC
ABCD
ABCDE
ABCDEF

但是当我把它写到文本文件时,它实际上看起来像 AABABCABCDABCDE``

这是我的代码:

#include<stdio.h>

 int main()
 {
     int num;
     char i,j;
     FILE *fptr;
     fptr = fopen("D:\\passwords.txt","w");
     for(i=665;i<70;i++)
     {
         printf("\n");
         for(j=65;j<=i;j++)
             fprintf(fptr,"%c",j);
     }
     fclose(fptr);
     return 0;
  }

有人可以帮助将序列写入文本文件..

2 个答案:

答案 0 :(得分:0)

for(i=65;i<70;i++)
 {
     for(j=65;j<=i;j++)
         fprintf(fptr,"%c",j);
     fprint(fptr,"\n");
 }

答案 1 :(得分:0)

我已经解决了你的问题。这是解决方案: 当你想写入文件时,你使用fprint和指定你要写的文件的文件描述符。但是你使用printf来插入&#39; \ n&#39;,printf会把&#39; \ n&#39;进入stdout而不是你想要的文件插入&​​#39; \ n&#39;。只需稍微一点就可以使你的代码正常工作。

 int num;
 char i,j;
 FILE *fptr;
 fptr = fopen("passwords2.txt","w+");
 for(i=65;i<70;i++)
 {
     fprintf(fptr,"\n");
     for(j=65;j<=i;j++)
         fprintf(fptr,"%c",j);
 }
 fclose(fptr);
 return 0;