您的位置:首页 > 其它

CCF201312-2 ISBN号码

2018-01-28 14:20 204 查看
简单题,注意一下mod11=10的情况就好了,代码如下:

#include<bits/stdc++.h>
using namespace std;
int main()
{
char a[15];
for(int i=0; i<13; i++)
scanf("%c",&a[i]);
//0123456789 10 11 12
//0-670-8216 2  -   4
int sum=0;
sum=(a[0]-'0')*1+(a[2]-'0')*2+(a[3]-'0')*3+(a[4]-'0')*4+(a[6]-'0')*5+(a[7]-'0')*6+(a[8]-'0')*7+(a[9]-'0')*8+(a[10]-'0')*9;
int s=a[12]-'0';
int z=sum%11;
if((s==z)||(z==10&s==40))//X-'0'=40
printf("Right");
else
{
for(int i=0; i<12; i++)
printf("%c",a[i]);
if(z==10)
printf("X");
else
printf("%d",z);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: