一道C语言题,,我想了两天了也没编出来,麻烦诸位给解决一下??

来源:百度知道 编辑:UC知道 时间:2024/05/13 00:27:51
用C编写一个程序,将指定的文本文件中的所有小写字母转换成对应的大写字母,其他字符及格式不变。
注意:这个文本文件中包含多个回车符。

流程大约就这样吧
1.先打开文件.
2.取得文件的值给一字符数组
3.将字符数组中的小写字母转换成大写字母
4.将字符数组写回原文件中,覆盖原来的文件.
刚好没事,给你编个,如下:
#include <stdio.h>
#include <stdlib.h>
#define max 2048

void main()
{
char str[max]={0};
FILE *fp;
int i=0;
char c;
if((fp=fopen("1.txt","r"))==NULL)
{
printf("open file failed\n");
exit(0);
}
c=fgetc(fp);
while(c!=EOF)
{
str[i]=c;
i++;
c=fgetc(fp);
}
fclose(fp);
i=0;
for(;str[i]!='\0';i++)
{
if((str[i]>='a')&&(str[i]<='z'))
{
str[i]=str[i]-32;
}
}
if((fp=fopen("1.txt","w"))==NULL)
{
printf("open file failed\n");
exit(0);
}
fprintf(fp,"%s",str);
fclose(fp);
printf("modify ready\n");
}

使