对标准输入中出现的某一个单词进行计数

对标准输入中出现的某一个单词进行计数

要求:
编写一个程序,对标准输入进行扫描,并对单词"the"出现的次数进行计数。进行比较时区分大小写。可认为各单词由一个或多个空格字符分隔,而且输入行在长度上不会超过100个字符
思路:
利用strtok函数从字符串中隔离出各单词(从一个字符数组中提取空白字符分隔的标记),第一次调用strtok函数时,第一个参数为缓冲区数组名,函数将找到第一个单词并保存其在字符串中的位置,接下来调用strtok时第一个参数为NULL,函数就在同一个字符串中从这个被保存的位置开始像前面一样查找下一个标记。
代码:

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
char const	whitespace[]="\n\r\f\t\v";
int main()
{
	char buffer[101];
	int count;
	count=0;
	while( gets( buffer ) )
	{
		char *word;
		for( word=strtok( buffer,whitespace );
			 word!=NULL;
			 word=strtok( NULL,whitespace ) )
			{
				if( strcmp( word,"the" )==0 )
					count+=1;	
			}	
	}
	printf( "%d\n",count );
	return EXIT_SUCCESS; 
}

猜你喜欢

转载自blog.csdn.net/qq_44709990/article/details/104997757