1195.最长&最短文本

题目描述:

输入多行字符串,请按照原文本中的顺序输出其中最短和最长的字符串,如果最短和最长的字符串不止一个,请全部输出。
  

输入:

输入包括多行字符串,字符串的长度len,(1<=len<=1000)。

输出:

按照原文本中的顺序输出其中最短和最长的字符串,如果最短和最长的字符串不止一个,请全部输出。

样例输入:

hello
she
sorry
he

 

样例输出:

he
hello
sorry

 

#include<stdio.h>
#include<string.h>
using namespace std;
                                                     //记下最大最小的长度即可,再遍历一次符合长度要求的统统输出 
typedef struct string{
    int len;
    char str[1001];
}string;

string s[10001];

int main(){
    int i,index=0;
    int max,min;
    while(scanf("%s",s[index].str)!=EOF){
        s[index].len=strlen(s[index].str);
        min=max=s[0].len;
        if(max<s[index].len){
            max=s[index].len;
        }
        else if(min>s[index].len){
            min=s[index].len;
        }
        index++;
    }    
    for(i=0;i<index;i++){
        if(s[i].len==min){
            puts(s[i].str);
        }
    }
    for(i=0;i<index;i++){
        if(s[i].len==max){
            puts(s[i].str);
        }
    }
    return 0;
}

 

posted @ 2018-10-01 18:09  bernieloveslife  阅读(329)  评论(0编辑  收藏  举报