全WA求助

P1055 [NOIP2008 普及组] ISBN 号码

dwsy_douanji @ 2023-12-13 20:25:57

#include<bits/stdc++.h>
using namespace std;
struct a{

} b;
int main(){
    int a,b,c,d,e,f,g,h,i,k;
    char j;
    scanf("%d-%d%d%d-%d%d%d%d%d-%c",&a,&b,&c,&d,&e,&f,&g,&h,&i,&j);
    if(j='0')k=0;
    if(j='1')k=1;
    if(j='2')k=2;
    if(j='3')k=3;
    if(j='4')k=4;
    if(j='5')k=5;
    if(j='6')k=6;
    if(j='7')k=7;
    if(j='8')k=8;
    if(j='9')k=9;
    if(j='X')k=10;
    if((a*1+b*2+c*3+d*4+e*5+f*6+g*7+h*8+i*9)%11==k)printf("Right");
    else printf("%d-%d%d%d-%d%d%d%d%d-%d",a,b,c,d,e,f,g,h,i,(a*1+b*2+c*3+d*4+e*5+f*6+g*7+h*8+i*9)%11);
    return 0;
}

by Michelle01 @ 2023-12-13 20:32:48

@dwsy_douanji 注意审题,题目的输入中是要有-字符的,不是都是数字。


by Michelle01 @ 2023-12-13 20:34:13

@dwsy_douanji 你这样做,输入一串字符串,将字符串对应的数字转成对应int类型的数字,如果是-符号,就不转换。这样子就可以了。不要暴力


by wangzhiqin @ 2023-12-13 20:35:02

@Michelle01 他用scanf输入的。"-"已经读入只是没存.


by shang091113 @ 2023-12-13 20:35:16

输出里面有分隔符,你没加“-”字符


by dwsy_douanji @ 2023-12-13 20:37:05

转换改了一下

j=k;
    if(k==48)k=0;
    if(k==49)k=1;
    if(k==50)k=2;
    if(k==51)k=3;
    if(k==52)k=4;
    if(k==53)k=5;
    if(k==54)k=6;
    if(k==55)k=7;
    if(k==56)k=8;
    if(k==57)k=9;
    if(k==88)k=10;

by Michelle01 @ 2023-12-13 21:05:01

@dwsy_douanji 提交试试


|