L1-025. 正整数A+B

一、题目出处

PAT PGLT 决赛

题目链接:https://www.patest.cn/contests/gplt/L1-025

二、代码如下

题目也算简单,输出两个字符串,判断是不是只有数字,以及是否在1到1000的区间内

附上代码

    #include
    int convert(const char *str)
    {
        int sum=0;
        int i;
        for(i=0;str[i]!='\0';i++)
        {
            if(str[i]>='0' && str[i]<='9')
                sum=sum*10+str[i]-'0';
             else
                return -1;

        }
        if(sum>=1 && sum<=1000)
            return sum;
        else
            return -1;
    }
    int main()
    {
        char A[10000],B[10000];
        int a,b;
        scanf("%s ",&A);
        gets(B);
        a=convert(A);
        b=convert(B);
        if(a==-1)
            printf("? + ");
        else
            printf("%d + ",a);
         if(b==-1)
            printf("? = ");
        else
            printf("%d = ",b);
        if(a==-1||b==-1)
            printf("?\n");
        else
            printf("%d\n",a+b);
        return 0;

    }


你可能感兴趣的:(C/C++,PAT,ACM,C++,PAT,GPLT)