/ 科创班 /

记录详情

Accepted

/in/foo.c: In function 'main':
/in/foo.c:21:5: warning: 'gets' is deprecated [-Wdeprecated-declarations]
     gets(s);
     ^~~~
In file included from /in/foo.c:1:0:
/usr/include/stdio.h:640:14: note: declared here
 extern char *gets (char *__s) __wur __attribute_deprecated__;
              ^~~~
/in/foo.c:31:13: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
             if (i > max)
             ^~
/in/foo.c:33:17: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
                 maxp = cmp;
                 ^~~~
/in/foo.c:47:5: warning: 'maxp' may be used uninitialized in this function [-Wmaybe-uninitialized]
     printstr(maxp);
     ^~~~~~~~~~~~~~
/tmp/cceeX02D.o: In function `main':
foo.c:(.text.startup+0xd): warning: the `gets' function is dangerous and should not be used.
# 状态 耗时 内存占用
#1 Accepted 1ms 180.0 KiB

代码

#include <stdio.h>
#include <string.h>
#include <ctype.h>
#define N 100

void
printstr(char *p)
{
    while (!((*p == ' ') || (*p == '\0')))
    {
        putchar(*p);
        p++;
    }
}

int
main()
{
    char s[N+1], *p, *maxp, *cmp;
    int max = 0;
    gets(s);
    p = s;
    cmp = s; 
    for (int i=0;; p++)
    {
        
        if (isalpha(*p))
            i++;
        if (isspace(*p))
        {
            if (i > max)
                max = i;
                maxp = cmp;
            cmp = p + 1; 
            i = 0;
        }
        if (*p == '\0')
        {
            if (i > max)
            {
                max = i;
                maxp = cmp;
            }
            break;
        }
    }
    printstr(maxp);
    return 0;
}

信息

递交者
类型
自测
题目
7.10求最长单词
语言
C
递交时间
2018-10-26 12:52:17
评测时间
2018-10-26 12:52:17
评测机
分数
10
总耗时
1ms
峰值内存
180.0 KiB