當前位置:成語大全網 - 新華字典 - 統計壹個英文文件中每個單詞的次數,如何用壹個壹位數組實現?

統計壹個英文文件中每個單詞的次數,如何用壹個壹位數組實現?

妳的想法在邏輯上是好的,但是不能拿。因為如果文件很大,妳能全部讀進去嗎?這裏有個參考。

//#包含?" stdafx.h"//vc++6.0添加這行。

#包含?" stdio.h "

#包含?" ctype.h "

#包含?" string.h "

#包含?" stdlib.h "

struct?單詞{

夏爾?w[21];

int?n;

};

int?主要(無效){

int?I,j,k,l;

struct?詞?w[1000];

文件?* fp

if((fp=fopen("123.txt "," r ")= = NULL){

printf("打開?那個?文件?失敗...\ n ");

退出(0);

}

I = 0;

while(fscanf(fp," %s ",w[i].w),!feof(fp)){

如果(!伊薩法(w[i].w[0])

strcpy(w[i].w,w[i]。w+1);

如果(!伊薩法(w[i].w[j=strlen(w[i])。w)-1]))

w[i]。w[j]= ' \ 0 ';

for(j = 0;j & lt我;j++)

if(strcmp(w[j].w,w[i]。w)==0){

w[j]。n++;

打破;

}

if(j & gt;=i)w[i++]。n = 1;

}

fclose(FP);

for(k = 0;k & lt我;k++){

for(l=k,j = l+1;j & lt我;j++)

if(strcmp(w[l].w,w[j]。w)>0)?l = j;

如果(l!=k){

w[I]= w[l];

w[l]= w[k];

w[k]= w[I];

}

printf("%-20s%d\n ",w[k]。w,w[k]。n);

}

回歸?0;

}