80分,还有两个测试点过不了,求大佬帮助!

P1055 [NOIP2008 普及组] ISBN 号码

ColaShuai @ 2023-02-04 17:17:44

#include <stdio.h>
int main()
{
    char a[14];
    int i,x=1,sum=0;
    scanf("%s",a);
    for(i=0;i<12;i++){
        if(i==1||i==5||i==11) continue;
        sum+=(a[i]-48)*x;
        x++;
    }
    if(a[12]==sum%11+48) printf("Right");
    else if(sum%11==10){
        a[12]='X';
        printf("%s",a);
    }
    else {
        a[12]=sum%11+48;
        printf("%s",a);
    }
    return 0;
}

by hzn7 @ 2023-02-04 17:32:51

你干嘛,诶呦;


by ZQIN_P @ 2023-02-04 17:34:46

@ColaShuai 您在输出Right的时候没有特判结尾为X但是正确的情况


by ColaShuai @ 2023-02-04 17:36:34

@planet_over_for_ever 看出来了,谢谢!


by ZQIN_P @ 2023-02-04 17:37:08

不谢


by urd1023 @ 2023-03-12 03:01:48

@planet_over_for_ever 大佬牛逼,80分过了


|