问题 D: C语言8.22

题目描述

编写一个函数,输入一行字符,将此字符串中最长的单词输出。

输入

一行字符,只包含英文字符和空格。保证字符串的长度不超过 100。

输出

输出读入的最长单词。
请注意行尾输出换行。

样例输入

1
This is not a program

样例输出

1
program

提示

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include<iostream>
#include<cstring>
using namespace std;
void longword(char s[]){
char s1[100],s2[100];
s1[0]='\0';
for(int i=0;i<strlen(s);i++){
int count=0;
while(s[i]>='A'&&s[i]<='Z'||s[i]>='a'&&s[i]<='z')
s2[count++]=s[i++];
s2[count]='\0';
if(strlen(s1)<strlen(s2))
strcpy(s1,s2);
}
cout<<s1<<endl;
}
int main(){
char chars[100];
gets(chars);
longword(chars);
return 0;
}