牛客也禁用gets了吗?

Digital Roots

https://www.nowcoder.com/practice/cef727d0af33479c9fb4a9c120702414?tpId=40&&tqId=21403&rp=1&ru=/ta/kaoyan&qru=/ta/kaoyan/question-ranking

一、用gets出错的

编译条件:C++(clang++11)

#include<bits/stdc++.h>
using namespace std;

static const int maxn=1e5+5;

char solve[maxn];

int main()
{
    long long num;
    while( nullptr!=gets(solve) )
    {

        int len=-1;
        len=strlen(solve);
        if( 1==len && solve[0]=='0' )
        {
            break;
        }

        while( 1 )
        {
            num=0;
            len=strlen(solve);
            if( 1==len )
            {
                printf("%d\n",solve[0]-'0');
                break;
            }
            else
            {
                for(int i=0; i<len; ++i)
                {
                    num+=( solve[i]-'0' );
                }
                sprintf(solve,"%lld",num);
            }
        }


    }
    return 0;
 } 
编译错误
收起
编译错误:您提交的代码无法完成编译
a.cpp:11:18: error: use of undeclared identifier 'gets'
while( nullptr!=gets(solve) )
^
1 error generated.

二、方法一——用scanf解决

编译条件:C++(clang++11)

#include<bits/stdc++.h>
using namespace std;

static const int maxn=1e5+5;

char solve[maxn];

int main()
{
    long long num;
    while( ~scanf("%s",solve) )
    {

        int len=-1;
        len=strlen(solve);
        if( 1==len && solve[0]=='0' )
        {
            break;
        }

        while( 1 )
        {
            num=0;
            len=strlen(solve);
            if( 1==len )
            {
                printf("%d\n",solve[0]-'0');
                break;
            }
            else
            {
                for(int i=0; i<len; ++i)
                {
                    num+=( solve[i]-'0' );
                }
                sprintf(solve,"%lld",num);
            }
        }


    }
    return 0;
 } 
全部评论

相关推荐

01-15 13:52
已编辑
河南大学 Java
六年要多久:标准头像,不吃香菜😂
点赞 评论 收藏
分享
2024-12-23 06:50
门头沟学院 Java
给点吧求求了:3点发的帖子,害怕😰
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务