在本地没错啊,为没什么有我五个wa

P1055 [NOIP2008 普及组] ISBN 号码

mrHCT @ 2022-04-12 17:23:43

#include<stdio.h>
int main()
{
    int x1,x2,x3;
    int a;
    int he;
    scanf("%d-%d-%d-%d",&x1,&x2,&x3,&a);
    he=x1+x2%10*4+(x2/10)%10*3+(x2/100)*2+x3%10*9+(x3/10)%10*8+(x3/100)%10*7+(x3/1000)%10*6+(x3/10000)*5;
    he=he%11;
    if(he==a)
    {
        printf("Right");
    }
    else
    {
    printf("%d-%d-%d-%d",x1,x2,x3,he);  
    }
    return 0;
}

by Dr_Gilbert @ 2022-04-12 18:02:59

@mrHCT 你这个在校验码为 X 的时候可能会出问题
例如:

1-234-56789-X

答案:Right
你输出:1-234-56789-10


by Mercury1004 @ 2022-04-12 18:03:20

题目不是说如果计算的结果为10就应该输出X吗 你是不是丢了这句 看起来你没有判断这个


|