题解 P1055 【ISBN号码】
jianzihao
2018-09-23 14:04:16
```cpp
#include<iostream>
#include<bits/stdc++.h>
using namespace std;
int main()
{
char x[15];
cin>>x;//定义字符数组
int sum=0,xym;
sum+=(x[0]-'0')*1;
sum+=(x[2]-'0')*2;
sum+=(x[3]-'0')*3;
sum+=(x[4]-'0')*4;
sum+=(x[6]-'0')*5;
sum+=(x[7]-'0')*6;
sum+=(x[8]-'0')*7;
sum+=(x[9]-'0')*8;
sum+=(x[10]-'0')*9;
sum=sum%11;
if(x[12]=='X')
{
xym=10;//单独考虑X=10
}
else{
xym=x[12]-'0';
}
if(sum==xym)
{
cout<<"Right";
}
else
{
cout<<x[0]<<x[1]<<x[2]<<x[3]<<x[4]<<x[5]<<x[6]<<x[7]<<x[8]<<x[9]<<x[10]<<x[11];//输出(有兴趣的同学可以简化)
if(sum==10)
cout<<"X";
else
cout<<sum;//输出校验码
}
return 0;
}
```