11 | 求英文句子中的最长单词(基础)
题目描述
一个英文句子(长度不超过255),只含有字母和空格,输出最长的一个单词。如有多个长度相同的单词,则输出最前面的一个。
输入
一个字符串。
输出
一个字符串。
样例
输入
in which four coins
输出
which
#include <bits/stdc++.h> using namespace std; int main(){ /* 第一步:分解并输出每个单词 第二步:通过打擂台的方法,找到最长的单词 */ char s[300],w[100]; char r[100]={'\0'};//存放最长的单词 int i,k; // k 表示w数组 的下标 gets(s); k=0; //循环每个字符 for(i=0;i<strlen(s);i++){ // 如果当前字符不是空格,则一定是单词的一部分 if(s[i]!=' '){ w[k]=s[i]; k++; //没存入一个字符都要判断一下,单词是否结束 if(s[i+1]==' '|| s[i+1]=='\0'){ //存储单词数组结束的标记 w[k]='\0'; //cout<<w<<endl; //输出测试 if(strlen(w)>strlen(r)){ strcpy(r,w); } //清空w k=0; } } } cout<<r<<endl; getchar(); getchar(); }
思考
如果是找到最短的单词,那么直接覆盖就可以了。不用比较。
分类:
算法
【推荐】国内首个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)