educoder

任务描述
题目描述:输入一段字符(只含有空格和字母,保证开头不为空格),里面有若干个字符串,求这些字符串的长度和,并输出最长字符串内容,如果有多个输出最先出现的那个字符串。以stop作为最后输入的字符串。

相关知识(略)
编程要求
请仔细阅读右侧代码,结合相关知识,在Begin-End区域内进行代码补充。

输入

输入一段文字

输出

输入一段字符,以stop作为最后输入的字符串。

测试说明
样例输入:

My name is Amy

My name is Jane

stop

样例输出:

11 name

12 name

提示:

字符串长度不超过100。

**注意:使用gets()函数会引起警告,但正确使用不影响测评结果。

推荐使用:fgets()函数。**

开始你的任务吧,祝你成功!

代码
#include
#include
int main()
{
char a[1002];
int i, j, k, l, left, right, max, count, count1;
while (gets(a) && a[0] != ‘s’)
{
max = -1;
count = 0;
count1 = 0;
l = strlen(a);
for (i = 0; i < l; i++)
{
if (a[i] != ’ ')count++;
}
for (i = 0; i < l; i++)//记录用空格分开的哪个最大
{
if (a[i] != ’ ‘)
{
count1++;
if (count1 > max)
{
max = count1;
left = i - count1 + 1;//左标
right = i;//右标
}
}
else//a[i]=’ ’
{
count1 = 0;
}
}
printf("%d “, count);
for (i = left; i <= right; i++)
{
printf(”%c", a[i]);
}
printf("\n");
}
}

你可能感兴趣的:(c)