70分,求看看哪里错了

P1055 [NOIP2008 普及组] ISBN 号码

突然发现没写注释,说明一下,0的ASCII码是48,X的ASCII码是88.
by originate @ 2017-11-08 17:23:17


为什么要写a[12]=b+78这一句啊 还有就是你在这一句后面没有输出啊 其实你大可不必把X化成整数啊,如果a[12]是X直接判断b是不是10就可以了 最后记得要输出,不管怎样都是有输出的 顺便附上代码,很久以前写的,跟你的差不多 ```cpp #include<iostream> #include<cstring> using namespace std; int main(){ string str; int num[13],sum1,sum2; cin>>str; for(int i=0;i<13;i++) num[i]=str[i]-48; sum1=num[0]*1+num[2]*2+num[3]*3+num[4]*4+num[6]*5+num[7]*6+num[8]*7+num[9]*8+num[10]*9; sum2=sum1%11; if((num[12]==sum2)||((str[12]=='X')&&(sum2==10))) cout<<"Right"; else{ for(int i=0;i<12;i++) cout<<str[i]; if(sum2==10) cout<<'X'; else cout<<sum2; } return 0; } ```
by Hugo_Minion @ 2017-11-08 18:18:24


其实可以使用```cpp scanf("%1d",&a); ```来做到只读一位的数字
by Hades18 @ 2017-11-08 18:48:23


竟然有个X
by Friedrichqi @ 2017-11-10 21:07:56


|