1个AC

P1957 口算练习题

Paris_Commune @ 2022-01-02 13:52:07

#include "bits/stdc++.h"
char oo[1001];
long i;
int main(){
    long a;
    std::cin>>a;
    char yiduizifu[1000];
    long long aa,bb;
    char yunsuanfu;
    long long asdfasdfadasdfasdfa;
    for(;;){
        if(i>=a){break;}
        /*scanf("%d",yiduizifu);*/std::cin>>yiduizifu;
        if(yiduizifu[0]<123&&yiduizifu[0]>96)
        {
            scanf("%d",&aa);//cin>>aa;
            scanf("%d",&bb);//cin>>bb;
            yunsuanfu=yiduizifu[0];
        }
        memset(oo,0,sizeof(oo));
        if(yiduizifu[0]>48&&yiduizifu[0]<58)
        {
            sscanf(yiduizifu,"%d",&aa);
            scanf("%d",&bb);
        }
        if(yunsuanfu==97)
        {
         sprintf(oo,"%d+%d=%d",aa,bb,aa+bb);
        }
        if(yunsuanfu==98)
        {
         sprintf(oo,"%d+%d=%d",aa,bb,aa-bb);
        }
        if(yunsuanfu==99)
        {
         sprintf(oo,"%d+%d=%d",aa,bb,aa*bb);
        }
        long  djfjs=0;
        djfjs=strlen(oo);
        printf("%s\n%d",oo,djfjs);
        std::cout<<"\n";
        i++;
    }
    int djfjs;
    djfjs*=0;
    return djfjs;
}

by ud2_ @ 2022-01-02 14:02:11

直接写字符,不要用 ASCII 码,否则你自己都看不懂这段代码。比如考虑以下输入:

2
a 1 0
0 1

另外 %d 应该不能用于 long。而且,

long i;
for(;;){
    if(i>=a){break;}
    // …
    i++;
}
long long asdfasdfadasdfasdfa;
long  djfjs=0;
djfjs=strlen(oo);
int djfjs;
djfjs*=0;
return djfjs;

这是什么迷惑操作


by FanSizhe127 @ 2022-01-10 13:09:27

#include<bits/stdc++.h>
using namespace std;
int len(int d){
    int a=d,x=0;
    while(a)
    {
        x++;
        a/=10;
    }
    if(d<=0)
        return x+1;
    else
        return x;
}
int main()
{
    int n,a,b,s;
    cin>>n;
    string q;
    char c,old;
    int i,j,k,l;
    for(i=1;i<=n;i++)
    {
        cin>>q;
        if(q=="a"||q=="b"||q=="c")
        {
            cin>>a>>b;
            if(q=="a")
            {
                cout<<a<<'+'<<b<<'='<<a+b;
                s=a+b;
                old='a';
            }
            if(q=="b")
            {
                cout<<a<<'-'<<b<<'='<<a-b;
                s=a-b;
                old='b';
            }
            if(q=="c")
            {
                cout<<a<<'*'<<b<<'='<<a*b;
                s=a*b;
                old='c';
            }
            cout<<'\n';
            int o=len(a)+len(b)+len(s);
            cout<<o+2<<'\n';
        }
        else
        {
            int u=0;
            for(j=0;j<q.size();j++)
            {
                u=u*10+q[j]-'0';
            } 
            a=u;
            cin>>b;
            if(old=='a')
            {
                cout<<a<<'+'<<b<<'='<<a+b;
                s=a+b;
                old='a';
            }
            if(old=='b')
            {
                cout<<a<<'-'<<b<<'='<<a-b;
                s=a-b;
                old='b';
            }
            if(old=='c')
            {
                cout<<a<<'*'<<b<<'='<<a*b;
                s=a*b;
                old='c';
            }
            cout<<'\n';
            cout<<len(a)+len(b)+len(s)+2<<'\n';
        }
    }
}

by Eleveslaine @ 2022-01-16 19:36:42

@ud2_ 我感觉,他好像不是在找人 debug

long long asdfasdfadasdfasdfa; // 离大谱的变量名

他可能觉得,自己的代码写成这样

djfjs*=0; // 离大谱的变量名,直接 return 0 他 不 香 吗

for(;;) // while(1) 他 不 香 吗

long i; // int 他 不 香 吗

都能 AC 一个, 实在是太 N^B 了!


|