您的位置:首页 > 其它

NOIP2011统计单词数

2015-07-24 22:24 323 查看




分析:常规题,一次扫描即可,但要注意大小写和没出先要输出-1.判断是否是某个单词的一部分可以通过判断后一个词是不是空格或\0来解决。上题。

#include <stdio.h>
#include<string.h>
#define MAX 1000
int main()
{
char str[MAX];
char word[MAX];
int i,lenth,j=0;
int t,L;
int num=0,pos;
gets(word);
gets(str);
lenth=strlen(str);
L=strlen(word);
for(i=0;i<lenth;i++)
{
if(str[i]==word[j]||(str[i]+32)==word[j]||(str[i]-32)==word[j])        //大小写一样也可以
{
j++;
if(j==1) t=i;    //标记第一次的位置
}
else
{
j=0;        //不是该单词清零
}
if(j==L&&(str[i+1]==' '||str[i+1]=='\0'))    //判断是不是某词的一部分
{
if(num==0) pos=t;
num++;
}
}
if(num==0) printf("-1");
else printf("%d\n%d",num,pos);
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: