詞頻統計:
專案需求:
1.小檔案輸入. 為表明程式能跑
2.支援命令列輸入英文作品的檔名
3. 支援命令列輸入儲存有英文作品檔案的目錄名,批量統計
4. 從控制台讀入英文單篇作品,重定向輸出
之前已經完成小檔案輸入的功能,接下來就是補充2、3、4的功能。
定義結構體:
//讀單詞函式:結構體定義:單詞和對應頻率
typedef struct
tlist
void readword(word *p,int在指定目錄下遍歷所有txt檔案:len)
else
readword((word*)p->next[i],len);
len--;
}
} if(p->num!=0
)
}
bool findfile(char *pfilename, char *findfiletype)從txt文件中讀入:; sprintf(type,
".%s
",findfiletype);
//handle hfindtype;
//查詢對應檔案型別
char filename[260]=;
sprintf(filename,
"%s\\*.*
",pfilename);
zeromemory(&fd,sizeof
(fd));
if(0 ==strlen(filename))
else
else
else
; sprintf(temp,
"%s\\%s
",pfilename,fd.cfilename);
findfile(temp,findfiletype);}}
}//繼續查詢下乙個檔案
while((x=fgetc(fp))!=eof) //輸出單詞及其出現頻率:從txt文件中讀入
else
} tempword[len]='\0'
; createword(tempword);
len=0
; fclose(fp);
readword(root,0); //注:重定向還不太了解,實驗結果還在完善中。比較頻率大小氣泡排序
struct
tlist temp;
for(i=0;i1;i++)
for(j=i+1;j)
if(list[i].time>list[j].time||(list[i].time==list[j].time&&strcmp(list[i].word,list[j].word)>0
))
//將單詞和對應頻率輸出到result.txt中 file *fpx;
fpx=fopen("
result.txt
","w
");
for (i=0;i)
fprintf(fpx,
"%s %d\n
",list[i].word,list[i].time);
fclose(fpx);
return
0;
}
今天psp:
內容開始時間
打斷時間
結束時間
淨時間查資料
17:24
017:51
27分寫**
20:43
15分21:50
67分讀構建之法
18:04
018:38
34分在網上看練習與討論
18:40
019:17
37分本週**堆積圖:
**和部落格會繼續更新,實驗結果正在除錯
詞頻統計專案的總結
剛開始在做詞頻統計時只能在 中更改統計的段落,這樣使 看起來非常的亂而且容易出錯,隨著老師的要求有變更,我的 也開始進行更新,詞頻統計實現可以從控制台進行輸入要統計文件的名字進行統計,實現統計所有詞頻數目以及按詞頻的數量從大到小的順序進行排序。直到現在可以將原本控制台工程遷移到了web工程上。詞頻統...
分析「詞頻統計「專案程序
目錄 功能需求 實現 psp功能需求 1.小檔案輸入 2.支援命令列輸入英文作品的檔名 3.支援命令列輸入儲存有英文作品檔案的目錄名,批量統計 4從控制台讀入英文單篇作品 實現 本次 實現了功能3。類名功能 void main string 主函式,呼叫其他函式實現基本功能 void sortmap...
詞頻數的統計
做乙個詞頻統計程式,該程式具有以下功能 基本要求 1 可匯入任意英文文字檔案 2 統計該英文檔案中單詞數和各單詞出現的頻率 次數 並能將單詞按字典順序輸出。3 將單詞及頻率寫入檔案。提高要求 完成基本要求的基礎上,實現下述功能 1.實現gui介面。2.將單詞及頻率寫入資料庫。include incl...