算法提高 最长单词

来源:互联网 发布:国企混改 知乎 编辑:程序博客网 时间:2024/06/05 19:29
  编写一个函数,输入一行字符,将此字符串中最长的单词输出。
  输入仅一行,多个单词,每个单词间用一个空格隔开。单词仅由小写字母组成。所有单词的长度和不超过100000。如有多个最长单词,输出最先出现的。
样例输入
I am a student
样例输出
student

#include<stdio.h>#include<string.h>int n;char temp[10050][10050];int word(char arr[]){int k=0,j=0;char *p=arr;while(*p){if(*p==' ' && *(p+1)!=' '){temp[k][j]='\0';//puts(temp[k]);k++;j=0;}else{temp[k][j++]=*p;}p++;}return k;}void cmp(){char arr[100050];int i,len1,len2;strcpy(arr,temp[0]);for(i=1;i<=n;i++){len1=strlen(arr);len2=strlen(temp[i]);if(len2>len1){strcpy(arr,temp[i]);}}puts(arr);}int main(){char arr[100050];gets(arr);n=word(arr);cmp();return 0;}


1 0
原创粉丝点击