_Hu_Tao @ 2022-07-31 20:34:34
#include<bits/stdc++.h>
using namespace std;
int a,b,c,d,e,f,g,h,i,ans,zans,sum;
int main(){
scanf("%1d-%1d%1d%1d-%1d%1d%1d%1d%1d-%1d",&a,&b,&c,&d,&e,&f,&g,&h,&i,&ans);
// cout<<a<<" "<<b<<" "<<c<<" "<<d<<" "<<e<<" "<<f<<" "<<g<<" "<<h<<" "<<i<<" "<<endl;
sum+=a*1;
sum+=b*2;
sum+=c*3;
sum+=d*4;
sum+=e*5;
sum+=f*6;
sum+=g*7;
sum+=h*8;
sum+=i*9;
if(ans==sum%11){
cout<<"Right";
return 0;
}else if(sum%11>10){
cout<<a<<"-"<<b<<c<<d<<"-"<<e<<f<<g<<h<<i<<"-"<<'X';
return 0;
}else{
cout<<a<<"-"<<b<<c<<d<<"-"<<e<<f<<g<<h<<i<<"-"<<sum%11;
return 0;
}
}
by 654179_qwq @ 2022-07-31 20:45:06
@Qszd2022 您的 scanf 有问题。
scanf("%1d-%1d%1d%1d-%1d%1d%1d%1d%1d-%1d",&a,&b,&c,&d,&e,&f,&g,&h,&i,&ans);
您的程序无法应对 ans 是 X 的情况。
可以试试把 ans 定义成 char,然后特判 X,求得 ans,存在另一个变量里。
by 654179_qwq @ 2022-07-31 20:46:49
能无偿帮别人调代码,我觉得这样的人可以当佛祖供起来。
我是佛祖
by _Hu_Tao @ 2022-07-31 20:47:21
@czx2009 我去试一试,谢谢你,我会加油的。(关注你了)
by 654179_qwq @ 2022-07-31 20:47:32
以上纯属玩笑,不代表我是佛祖。
by _Hu_Tao @ 2022-07-31 20:58:05
@czx2009
#include<bits/stdc++.h>
using namespace std;
int a,b,c,d,e,f,g,h,i,zans,sum;
char ans;
int main(){
scanf("%1d-%1d%1d%1d-%1d%1d%1d%1d%1d-%c",&a,&b,&c,&d,&e,&f,&g,&h,&i,&ans);
// cout<<a<<" "<<b<<" "<<c<<" "<<d<<" "<<e<<" "<<f<<" "<<g<<" "<<h<<" "<<i<<" "<<endl;
sum+=a*1;
sum+=b*2;
sum+=c*3;
sum+=d*4;
sum+=e*5;
sum+=f*6;
sum+=g*7;
sum+=h*8;
sum+=i*9;
if(int(ans)-48==sum%11){
cout<<"Right";
return 0;
}else if(sum%11>10){
if((sum%11>10)&&ans=='X'){
cout<<"Right";
return 0;
}else{
cout<<a<<"-"<<b<<c<<d<<"-"<<e<<f<<g<<h<<i<<"-"<<'X';
return 0;
}
}else{
cout<<a<<"-"<<b<<c<<d<<"-"<<e<<f<<g<<h<<i<<"-"<<sum%11;
return 0;
}
}
还是不行。。。
by qxs_ck @ 2022-08-01 09:11:14
if(int(ans)-48==sum%11){
cout<<"Right";
return 0;
}else if(sum%11>10){
if((sum%11>10)&&ans=='X'){
cout<<"Right";
return 0;
改成
if(int(ans)-48==sum%11){
cout<<"Right";
return 0;
}else if(sum%11==10){
if((sum%11==10)&&ans=='X'){
cout<<"Right";
return 0;
就是
sum%11>10 改成sum%11==10