08年華科機試第二題(統計文件中單詞的數目)

/* 2、統計文件中單詞數目 */
/*這裏就選一篇簡單的文章。 單詞與單詞之間 僅僅隔着 空格,換行符, 逗號,句號*/
/*記住 fopen  fgetc  fputc  fscsnf  fprintf 這幾個函數即可*/
/*測試數據 ;  文件 0802.txt 裏面是:	Just because someone doesn‘t love you the way you want them to,
                                         doesn‘t mean they don‘t love you with all they have. 
  輸出結果:  文件中共有單詞22個 */

/*程序:*************************愛X的味道*****************************/

#include<stdio.h>
#include<stdlib.h>
int FindWord()
{
	int count=0,word=0;
	char ch;
	FILE *fp;
	if(NULL== (fp=fopen("0802.txt","r") ) )
		printf("打開文件失敗!\n");
	while(!feof(fp))
	{
		ch=fgetc(fp);
		if(ch==' ' || ch=='\n' || ch=='.' || ch==',')  /*碰到這樣的,word標記0*/
			word=0;
		else
			if( (0==word) && (!feof(fp)))        /*讀下一個單詞時若不是上面的符號,則是一個單詞的開始
				                                     知道讀完這個單詞,即word再次爲0,count才++ */
			{
				word=1;
				count++;
			}
		
	}
	fclose(fp);
	return count;
}
int main()
{
	int sum;
	sum=FindWord();
	printf("文件中共有單詞:  %d  個\n\n",sum);
	return 0;
}

 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章