本地没问题,提交全wa,且都提示我输出第一个元素为’-‘
查看原帖
本地没问题,提交全wa,且都提示我输出第一个元素为’-‘
250168
catof221b楼主2023/2/5 08:40
#include <stdio.h>
#include <stdlib.h>

int main()
{
    int n,a[100][3]={0},b[100][3],w[5]={0};
    char f,f2,f3;
    scanf("%d",&n);
    getchar();
    for(int i=0;i<n;i++)
    {
        if((f=getchar())>='a')
        {
            f2=f;
            scanf("%d%d",&a[i][0],&a[i][1]);
        }
        else
        {
            scanf("%d%d",&a[i][0],&a[i][1]);
            int temp=a[i][0];
            while(a[i][0]/10!=0)
            {
                w[1]=1;
                a[i][0]/=10;
                w[1]++;
            }
            a[i][0]=temp+pow(10,w[1])*(f-'2'+2);
        }
        getchar();
        switch(f2)
        {
            case 'a':{f3='+';a[i][2]=a[i][0]+a[i][1];}break;
            case 'b':{f3='-';a[i][2]=a[i][0]-a[i][1];}break;
            case 'c':{f3='*';a[i][2]=a[i][0]*a[i][1];}break;
        }
        b[i][0]=a[i][0];
        b[i][1]=a[i][1];
        b[i][2]=a[i][2];
        for(int j=0;j<3;j++)
        {
            w[0]=1;
            while(b[i][j]/10!=0)
            {
                b[i][j]/=10;
                w[0]++;
            }
            w[j+1]=w[0];
        }
        w[4]=w[1]+w[2]+w[3];
        if(a[i][2]<0)
        {
            w[4]++;
        }
        printf("%d%c%d=%d\n%d\n",a[i][0],f3,a[i][1],a[i][2],2+w[4]);
    }
    return 0;
}
2023/2/5 08:40
加载中...