emmm大一学生想了嘎嘎久,最后总结了一下qwq,相比应该是简洁的。slope
#include<stdio.h>
#include<string.h>
int main()
{
char a[255]={0};
gets(a);
int len=strlen(a);
int i,maxlen=0,index,maxstart,word=0;
for(i=0;i<len+1;i++){
if(a[i]<='z'&&a[i]>='a'||a[i]<='Z'&&a[i]>='A'){
word++;//记录单词长度
}
if(a[i]==' '||a[i]=='\0'){//空格清零和末尾清零
index=i;
if(maxlen<word){//直接记录最大的初始位置和长度
maxlen=word;
maxstart=index-maxlen;
}
word=0;
}
}
for(i=maxstart;i<maxstart+maxlen;i++)//遍历输出
{
printf("%c",a[i]);
}
return 0;
}