加载中...

浙江理工大学入队200题——14N

问题 N: 零基础学C/C++159——最长字符串

题目描述

给定一系列不同长度的字符串,找出最长的一串后输出

输入

输入为多组测试数据。

第一行为一个正整数n(n<=10),表示字符串的个数。
接下来有n行,每行一个字符串,字符串仅包含英文字母,长度不超过50。

输出

输出最长的字符串。

样例输入 Copy

3
a
bc
def

样例输出 Copy

def

题解

看到这个通过率与提交率有点疑惑778/2271,后来发现有点坑
如果你是AC83%,那么恭喜你,基本是换行忘加了,最后一个检测点需要\n
如果不是,那么就需要看以下代码了(s[][]也可以这么使用)

代码(AC)

点击查看代码
#include<stdio.h>
#include<string.h>
int a[10010];
char s[10010][51];
int main()
{
	int n;
	while (scanf("%d",&n)!=EOF)
	{
		for(int i=0;i<n;i++)
		{
			scanf("%s",&s[i]);
			a[i]=strlen(s[i]);
		}
		int max=0,flag;
		for(int i=0;i<n;i++)
		{
			if(a[i]>max)
			{
				max=a[i];
				flag=i;	
			}
		}
		printf("%s\n",s[flag]);
	}
	return 0;
}

posted @ 2022-10-29 22:35  shany212  阅读(29)  评论(0编辑  收藏  举报