1)、先用Hash表存储c语言中32个关键字,再扫描c源程序取出每个单词,利用Hash查找技术统计该程序中的关键字出现的频度。发生Hash冲突用线性探测法解决。设Hash函数为: Hash(key)=[(key的第一个字母序号)*100+(key的最后一个字母序号)] MOD 41。 (2)、用顺序表存储c语言中的关键字,把c源程序取出每个单词利用二分查找技术统计该程序中的关键字的出现频度。
具体代码如下所述:
#include
#define N 1000
void main(){
char en[N][81];
int i,j,num=0,n,state;
//num 用来统计单词的个数
//state 用来记录程序当前是否处于一个单词之中,初值为0,表示不在单词中,值为1,表示正处于在一个单词中
printf("Please input the number of lines for English passage:");
scanf("%d",&n)