C语言数组相似度比对,某课程设计---文件相似度判断
該樓層疑似違規已被系統折疊?隱藏此樓查看此樓
//返回兩個文件操作是否都成功
return?(?result1?&&?result2?);
}
//功能:將數據存儲到文件內
//輸入:const?char?*?FileName----想寫入數據的文件名
//????:const?char?*?Data----想寫入的數據
//輸出:無
//返回值:布爾型---真表示操作成功,假表示操作失敗
bool?WriteDataToFile(const?char?*?FileName,const?char?*?Data)
{
//定義文件指針
FILE?*?pFile;
//打開文件用于輸出
pFile=fopen(FileName,"w");
//判斷文件打開是否成功
if?(?NULL?==?pFile?)
{
//輸出錯誤信息
perror(FileName);
printf("Press?any?key?to?continue...");
fflush(stdin);
getchar();
//跳轉到錯誤處理
goto?ERROR_COME;
}
//將字符串輸出到文件
fputs(Data,pFile);
//判斷輸入文件成功否
if?(?ferror(pFile)?)
{
perror(FileName);
printf("Press?any?key?to?continue...");
fflush(stdin);
getchar();
goto?ERROR_COME;
}
//關閉文件
fclose(pFile);
//文件成功保存
return?true;
//操作失敗跳轉到此處
ERROR_COME:
//如果文件已打開則關閉文件
if?(?pFile?)
{
fclose(pFile);
}
return?false;
}
//功能:將數據由文件讀出
//輸入:const?char?*?FileName----想讀取數據的文件名
//????:const?char?*?Data----想接收數據的地址
//????:int?DataSize----緩沖區長度
//輸出:無
//返回值:布爾型---真表示操作成功,假表示操作失敗
bool?ReadDataFromFile(const?char?*?FileName,char?*?Data,int?DataSize)
{
//定義文件指針
FILE?*?pFile;
//打開文件用于輸出
pFile=fopen(FileName,"r");
//判斷文件打開是否成功
if?(?NULL?==?pFile?)
{
//輸出錯誤信息
perror(FileName);
printf("Press?any?key?to?continue...");
fflush(stdin);
getchar();
//跳轉到錯誤處理
goto?ERROR_COME;
}
//將字符串輸出到文件
fgets(Data,DataSize,pFile);
//判斷輸入文件成功否
if?(?ferror(pFile)?)
{
//輸出錯誤信息
perror(FileName);
printf("Press?any?key?to?continue...");
fflush(stdin);
getchar();
goto?ERROR_COME;
}
//關閉文件
fclose(pFile);
//文件成功保存
return?true;
//操作失敗跳轉到此處
ERROR_COME:
//如果文件已打開則關閉文件
if?(?pFile?)
{
fclose(pFile);
}
return?false;
}
//功能:比較文件(文件位置為當前程序運行的位置)
//輸入:無
//輸出:無
//返回:布爾型,---真表示操作成功,假表示操作失敗
void?CompareFile(void)
{
//兩個文件名
char?filename1[MAX_INPUT_NUM];
char?filename2[MAX_INPUT_NUM];
//定義兩個變量來保存連個文件內的字符串
char?strInFile1[MAX_INPUT_NUM];
char?strInFile2[MAX_INPUT_NUM];
//兩個文件中的單詞個數
int?wordnum1=0,wordnum2=0;
//相同單詞的個數
int?samewordnum=0;
//顯示文件的命令行參數
char?cmd[MAX_INPUT_NUM];
//得到的兩個單詞鏈表
PWORDNODE?list1,list2;
//置空
memset(filename1,0x0,sizeof(filename1));
memset(filename2,0x0,sizeof(filename2));
memset(strInFile1,0x0,sizeof(strInFile1));
memset(strInFile2,0x0,sizeof(strInFile2));
memset(cmd,0x0,sizeof(cmd));
fflush(stdin);
printf("輸入想比較的第一個文件名(Enter?first?file?name?to?compare)?=?");
//調用輸入函數接收輸入
GetUserInput(filename1);
fflush(stdin);
printf("輸入想比較的第二個文件名(Enter?second?file?name?to?compare)?=?");
//調用輸入函數接收輸入
GetUserInput(filename2);
總結
以上是生活随笔為你收集整理的C语言数组相似度比对,某课程设计---文件相似度判断的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux 内存溢出排查_【开发者成长】
- 下一篇: 猪八戒背媳妇用计算机弹出来,猪八戒背媳妇