最长单词
时间限制: 1Sec 内存限制: 128MB
题目描述
编写一个函数,输入一行字符,将此字符串中最长的单词输出。
输入仅一行,多个单词,每个单词间用一个空格隔开。单词仅由小写字母组成。所有单词的长度和不超过100000。如有多个最长单词,输出最先出现的。
输入
无
输出
无
样例输入
I am a student
样例输出
student
代码:
#include<stdio.h> #include<string.h> int main() { char a[100000],b[100000],c[100000]; gets(a); int i,j,len=strlen(a),max=0,f=0,k=0,l; for(i=0;i<len;i++) { k++; if(a[i]!=' ') {b[f]=a[i];f++;} if(a[i]==' ') { l=k; if(max<f) { max=f; for(j=0;j<max;j++) c[j]=b[j]; } f=0; } } if(len-l>max) for(j=l;j<len;j++) printf("%c",a[j]); else for(j=0;j<max;j++) printf("%c",c[j]); printf("\n"); return 0; }