提交只有80分是为什么(捂脸),难道是评分不允许一个个输入嘛。
#include<iostream>
using namespace std;
int main(){
int a1,a2,a3,a4,a5,a6,a7,a8,a9;
int sum = 0,t = 0,m = 0;
a1=getchar();
getchar();
a2=getchar();a3=getchar();a4=getchar();
getchar();
a5=getchar();a6=getchar();a7=getchar();a8=getchar();a9=getchar();
getchar();
t=getchar();
a1=a1-48;a2=a2-48;a3=a3-48;a4=a4-48;a5=a5-48;a6=a6-48;a7=a7-48;a8=a8-48;a9=a9-48;
sum = a1*1+a2*2+a3*3+a4*4+a5*5+a6*6+a7*7+a8*8+a9*9;
m = sum % 11;
if(m==10) m='X';
t=t-48;
if(m==t) cout<<"Right";
else if(m==88)
cout<<a1 <<"-"<<a2 <<a3 <<a4 <<"-"<<a5 <<a6 <<a7 <<a8 <<a9 <<"-"<<'X';
else
cout<<a1 <<"-"<<a2 <<a3 <<a4 <<"-"<<a5 <<a6 <<a7 <<a8 <<a9 <<"-"<<m;
return 0;
}
你这程序好奇怪啊
建议用这个;
#include <iostream>
using namespace std;
int main(){
string a;
int i,s=0,j=1;
cin>>a;
for (i=0;i<12;i++){
while (a[i]!='-'){
s+=(a[i]-'0')*j;j++;
}
}
s%=11;
if(s==10){
if (a[12]=='X') {cout<<"Right";return 0;}
else for (i=0;i<12;i++){cout<<a[i];}cout<<'X';return 0;
}
else {
if
(s==a[12]-'0') cout<<"Right"; return 0;
else
for (i=0;i<12;i++){cout<<a[i];}cout<<s;return 0;}
return 0;
}