请教C语言得高手

来源:百度知道 编辑:UC知道 时间:2024/05/11 02:08:18
一篇英文文章存放在文件a.txt中,请将其中的单词word1替换为word2(新旧单词均由键盘输入),需按区分大小写及不区分大小写两种情况讨论。
希望得到具体程序和一些注释,谢谢!!!

这个程序写的挺好的!

#include <stdio.h>
#include <string.h>
// 缓冲区, 用来放读取的内容
#define BUFFER_SIZE 1024
// 部分大小写的字符串比较
int MyCmp( const char *sz1, const char *sz2, int nLen )
{
char cMax, cMin;
for( ;nLen--; sz1++, sz2++ )
{
if( *sz1 == *sz2 )
continue;
cMax = *sz1 >= *sz2 ? *sz1 : *sz2;
cMin = *sz1 + *sz2 - cMax;
if( (cMax <= 'z' && cMax >= 'a') && (32 == cMax - cMin) )
continue;
return *sz1 - *sz2;
}
return 0;
}

int main()
{
// 文件指针
FILE *pFileS, *pFileD;
// 输入缓冲; 要替换的单词; 新的单词
char buffer[BUFFER_SIZE], wordOld[64] = {0}, wordNew[64] = {0};
// 缓冲区实际大小; 缓冲区操作标志; 每次读取的字节数; 要替换的单词长度; 新单词的长度; 区分大小写标志
int nTop = 0, nPoint, nRead, nOldLen, nNewLen, bDiv;

puts("输入两个词");
scanf("%63s%63s", wordOld, wordNew);
nOldLen = strlen(wordOld), nNewLen = st