求解,80分
查看原帖
求解,80分
417099
Steward_楼主2021/2/7 10:36

代码如下

#include<cstdio>
using namespace std;
char ISBN[101];
int sum=0;
int main()
{
    int c=0;char m[11];
    for(int i=0;i<=12;i++)
    scanf("%c\n",&ISBN[i]);
    for(int i=0;i<=11;i++)
    {if(ISBN[i]>='0'&&ISBN[i]<='9')
    {c++;m[c-1]=ISBN[i];}
    else continue;}
    for(int i=0;i<c;i++)
    sum+=(m[i]-'0')*(i+1);
    int last=sum%11;
    if(ISBN[12]-'0'==last) printf("Right");
    else 
    {for(int i=0;i<=11;i++)
    printf("%c",ISBN[i]);
    if(last==10) printf("X");
    else printf("%d",last);}
    return 0;
}

请大佬指教 谢谢 为什么只有80分呢(两个输出Right的点WA了)

2021/2/7 10:36
加载中...