一个以 . 结尾的简单英文句子,单词之间用空格分隔,没有缩写形式和其它特殊形式,求句子中的最长单词。
输入格式
输入一行字符串,表示这个简单英文句子,长度不超过 500。
输出格式
该句子中最长的单词。如果多于一个,则输出第一个。
输入样例:
I am a student of Peking University.
输出样例:
University
c++代码:
#include<iostream>
using namespace std;
int main()
{
string res,str;
while(cin>>str)
{
if(str.back()=='.') str.pop_back();//判断单词最后一个字符是否为点,如果是则删除
if(str.size()>res.size()) res=str;
}
cout<<res<<endl;
return 0;
}
c语言代码:
#include<stdio.h>
char q[600];
void xiaochou(char ch[])
{
int i=0,max=0;
while(i<strlen(ch))
{
int j=i;
while(ch[j]!=' '&&ch[j]!='.') j++;
if(j-i>max)
{
max=j-i;
for(int k=i,m=0;k<j;k++,m++)
{
q[m]=ch[k];
}
}
i=j+1;
}
printf("%s",q);
}
int main()
{
char ch[600];
gets(ch);
xiaochou(ch);
return 0;
}