题解 | #[NOIP2008]ISBN号码#
[NOIP2008]ISBN号码
https://www.nowcoder.com/practice/95712f695f27434b9703394c98b78ee5
#include <iostream> using namespace std; int main() { string isbn; cin >>isbn;//将字符储存在string里,也可以用字符数组来储存 int sum=0; for(int i=0,j=1;i<isbn.length()-1;i++) { if(isbn[i]!='-') {sum+=j*(isbn[i]-'0'); j++;} } //进行累乘 int m=sum%11; if((m==10&&isbn[12]=='X')||m==isbn[12]-'0') { cout <<"Right"<<endl; } else { if(m==10) { isbn[12]='X'; cout<<isbn<<endl; } else { isbn[12] = m +'0'; cout<<isbn<<endl; } } //进行isbn标志码的判断 }