尊敬的郭老师您好,在复习您在期末所谈的一些要点时,自写了一个C程序,原本是打算:将已经存在的一个文件里的所有小写字母替换为大写字母。但实现时,只做到了:创建一个新文件,将原始文件中的子母逐个读取后,首先进行大小写装换,然后逐个写入新的文件。疑问:如何不创建新的文件而直接对原始文件处理。
自写程序代码如下:
#include <stdio.h>
void main()
{
FILE *fp;
FILE *fp_out;
fp=fopen("test.txt","r+");
fp_out=fopen("test1.txt","w+");
char ch;
ch=getc(fp);
while(ch != EOF)
{
if(ch>='a' && ch<='z')
ch=ch-32;
putchar(ch);
fprintf(fp_out,"%c",ch);
ch=getc(fp);
}
printf("\n");
fclose(fp);
}
运行结果如下:
文件夹如下: