题目描述
输入n和n个字符串,输出其中最短的字符串。若长度相同则输出出现较早的那一个。
输入
第一行是一个整数n,后面跟着n行,每行包括一个由字母和数字和空格组成的字符串,长度不超过1000。
输出
长度最短的字符串,若长度相同则输出出现较早的那一个。
样例输入 Copy
5
How are you!
Happy
Good!
Hello world!
Thinks
样例输出 Copy
Happy
代码
#include<stdio.h>
#include<string.h>
int main()
{
int i,n,len,min;
char str[1000],ch[1000];
scanf("%d",&n);
getchar(); //吸收回车符
min=1001;//定义初始的最小值
for(i=0;i<n;i++)
{
gets(str);
len=strlen(str); //求输入的字符串长度
if(len<min) //输入的字符串长度小于min,
{
min=len;
strcpy(ch,str); //将字符串的内容复制到存储最短字符串的数组ch[1000]中
}
}
puts(ch);
return 0;
}