c 语言 输出最短字符串

/*****
题目描述
输入n和n个字符串,输出其中最短的字符串。若长度相同则输出出现较早的那一个。

输入
第一行是一个整数n,后面跟着n行,每行包括一个由字母和数字和空格组成的字符串,长度不超过1000。

输出
长度最短的字符串,若长度相同则输出出现较早的那一个。

样例输入 Copy
5
How are you!
Happy
Good!
Hello world!
Thinks
样例输出 Copy
Happy
*****/
!!!!!本题注意需要吃掉回车

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
    int n,len,l,i;
    len = 1000;
    char str[1000],ch;
    char min[1000];
    scanf("%d",&n);
    ch = getchar();//把回车吃掉
   while(n--)
    {
        gets(str);
        l = strlen(str);
        if(l < len)
        {
            strcpy(min,str);//将数组复制给min
            len = l;
        }
    }
    printf("%s\n",min);
    return 0;
}

发布了58 篇原创文章 · 获赞 0 · 访问量 754

猜你喜欢

转载自blog.csdn.net/qq_39345244/article/details/104896575