80分求助!!!!

P1055 [NOIP2008 普及组] ISBN 号码

ltbly @ 2024-03-03 11:10:16

#include<iostream>
#include<math.h>
using namespace std;
int main()
{   int b=1,c=0;
    int i;
    char a[13];
    for(i=0;i<13;i++){
    cin>>a[i];  
    } 

    for(i=0;i<12;i++){
        if(a[i]=='-'){
        continue;}
        c=c+b*(a[i]-48);
        b++;
    }
    if(a[12]-48==c%11)
    cout<<"Right";
    else{
    for(i=0;i<12;i++){
        cout<<a[i];
    }
    if(c%11==10)
    cout<<"X";
    else
    cout<<c%11;
    }
    }

by Rindong @ 2024-03-04 10:37:14

第20行,判断是否合法时,考虑c%11==10的情况

(c % 11 == 10 && a[12] == 'X') || a[12] - 48 == c % 11

|