12 | "我是第几个单词"(基础)
题目描述
输入一个英文句子,例如:“This is a Book.",可以看到句子是以“.”来作为结束符号的,并且单词之间以一个空格来分隔。接着再输入一个单词A,请找出首次在句子中出现的与A相同的单词,是句子中的第几个单词,若不存在,则输出该句子中单词字符的总个数。 例如对上句子而言,若输入单词“is”,则应输出:2 若输入单词“isa”,则应输出:11
输入
第一行为以‘.’结束的一个词组(仅由若干个单词组成,单词间由一空格隔开,除单词和最后的“.”以外,不含其它字符)
第二行是一个单词(不含空格)
输出
一个整数
样例
输入
This is a Book. Book
输出
4
#include <bits/stdc++.h> using namespace std; int main(){ /* 1.分解并输出每个单词(顺便统计一下每个单词是第几个单词 2.判断每个单词是否要找的单词,如果是,输入第几个 3.找不到就输出字符串字符总数 */ char s[1000],w[100],f[100]; int i,k=0;//k表示w的下标 int c=0; //计数器,统计每个单词是第几个单词 int c2=0;//计数器,统计总共有多少个字符 bool x= false;//假设没有找到响应的单词 gets(s); gets(f); for(i=0;i<strlen(s);i++){ if(s[i]!=' '&&s[i]!='.'){ w[k]=s[i]; k++; //判断连续的单词是否已经结束 if(s[i+1]==' '||s[i+1]=='.'){ w[k]='\0'; //⚠ c++; c2=c2+strlen(w); //判断是否是要找的单词f if(strcmp(w,f)==0){ x=true; cout<<c<<endl; break; } //清空 k=0; } } } if(x==false){ cout<<c2<<endl; } }
分类:
算法
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)