题目描述:

给定由若干个单词组成的字符串,字符串的长度小于 500,单词和单词之间由空格分开,求出其中的最长最短单词

输入描述:

长度小于 500 的字符串

输出描述:

输出为 2 行,每行一个单词,第一行输出最长单词,第二行输出最短单词,若有多个相同长度的最长最短单词,则输出第一次出现的那个

样例输入:

I play the leading man who else

样例输出:

leading

I

 

 1 #include<iostream>
 2 using namespace std;
 3 int main(){
 4     char m[1000];
 5     int i=0,word=0,p=0,q=0;
 6     int max=0,min=500;
 7     gets(m);
 8     while(m[i]!=\'\0\'){
 9         while(m[i]!=\' \'&&m[i]!=\'\0\'){
10             i++;
11             word++;
12         }
13         if(word>max){
14             max=word;
15             p=i-word;
16         }
17         if(word<min){
18             min=word;
19             q=i-word;
20         }
21         while(m[i]==\' \'){
22             i++;
23             word=0;
24         }
25     }
26     for(i=p;i<p+max;i++){
27         cout<<m[i];
28     }
29     cout<<endl;
30     for(i=q;i<q+min;i++){
31         cout<<m[i];
32     }
33     return 0;
34 } 

code

 

版权声明:本文为cookie996原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/cookie996/p/10994053.html