c语言没有向量可以存储单词信息,需要自己定义数据结构,此处方便用了结构体数组,因为无法确定单词数量,所以申请的空间很大,也可以用链表做,但是链表查找较为繁琐,时间上较慢。
#include
#include
#include
#include
//词频统计
//存储单词用结构体
typedef struct node{
char word[26];//一个单词
int count;//出现次数
}wordnode;
wordnode* readfile(char *filename);
void divide_word(char temp[]);
void insert_word(char temp[],wordnode* words,int* count);
void show_word(wordnode* words,int sum);
void sort_word(wordnode* words,int sum);
void swap(wordnode* e1, wordnode* e2);
void quickSort(wordnode* words, int l, int r);
//排序
void swap(wordnode* e1, wordnode* e2){
wordnode tmp = *e1;
*e1 = *e2;
*e2 = tmp;
}
void quickSort(wordnode* words, int l, int r){
if(l >= r) return;
int ref = words[