1012. 我是第几个单词

附代码:

#include<iostream>
#include<string>
using namespace std;
int main()
{
	string s;
	getline(cin,s);//因为字符串包含空格,所以使用getline输入 
	int a=s.size();//使用size得出改字符串的单个字符个数 
	string s1,s2;//s1是要查找的单词,s2是后面用来单独装这个字符串的各个单词 
	cin>>s1;//输入我们要查找的单词 
	int y=0,g=0;//计数器,用来记录当前单词是第几个单词; 
	for(int i=0;i<a;i++)//如果该字符为字母不管大小,则依次加在字符串s2中 
	{
		if(s[i]>='a'&&s[i]<='z')
		{
			s2=s2+s[i];
		}
		else if(s[i]>='A'&&s[i]<='Z')
		{
			s2=s2+s[i];
		}
		else if(s[i]==' '||s[i]=='.')//如果为空格或小数点,则单词个数g加1 
		{
			g++;
			if(s2==s1)//开始判断这个单词是否等于我们要查找的那个单词 
			{
				cout<<g;//如果是,则输出这个单词所以序列,并跳出这个程序 
				break;
			}
			s2.clear();//每次判断完一个单词后要将这个字符串s2里的内容全部清空,然后开始装第二个单词 
		}
	
	}
	if(s2!=s1)//如果遍历完没有找到这个单词,则使用循环计算出这个字符串的字母个数并输出 
	{
		for(int i=0;i<a;i++)
		{
			if(s[i]>='a'&&s[i]<='z')
			{
				y++;
			}
			if(s[i]>='A'&&s[i]<='Z')
			{
				y++;
			}
		}
		cout<<y;
	}
	return 0;
}

  • 8
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值