读取文本文件,逐个字符进行一些琐碎的转换交换所有字母,将结果写入文本文件

问题描述

我必须阅读一个文本文件,逐个字符地进行一些琐碎的转换(交换所有字母的情况),然后将结果写入文本文件。我写了这段代码,但是没有用。请在这方面指导我。感谢您提前

#include <stdio.h>
#include <stdlib.h> 
int main() {
    char c[1000];
     char x[100];
     char var;
     int i;
    FILE *fptr;
    if ((fptr = fopen("text.txt","r")) == NULL) {
        printf("Error! opening file");
        // Program exits if file pointer returns NULL...
        exit(1);
    }

    // reads text until a newline is encountered...
    fscanf(fptr,"%[^\n]",c);
    printf("Data from the file:\n%s",c);
    // Convert the file to upper case....
     
    for( i=0;i<= strlen(c);i++){
      if(c[i]>=65&&c[i]<=90)
         c[i]=c[i]+32;
   }
      fptr = fopen("program.txt","w");
      fprintf(fptr,c);
     
      fclose(fptr);
    return 0;
}
    

解决方法

我不知道如何用该语言编写代码(我认为它是C ++),但是基本上希望您应该做的是一个for循环,迭代字符串中的每个字符。在Python中,它看起来像:

x = open("text.txt","r")
y = open("new text.txt","w")
z = ""
for char in x:
    z += char.upper()
    
y.write(z)

希望我能提出解决问题的想法。我也是新手,但使用Python。