非常水的一题,但是要细心
2024-08-23 19:23:19
发布于:广东
1阅读
0回复
0点赞
#include<iostream>
using namespace std;
char a[20];//字符数组
int main(){
    int cnt=0,chk,n=1;
    for(int i=0;i<13;i++){
        cin>>a[i];
    }
    for(int i=0;i<13;i++){
        if(i==1||i==5||i==11) continue;//忽略号码中的分隔符
        else if(i==12){
            if(a[i]=='X') chk=10;//如果效验码为X则设为10
            else chk=int(a[i])-48;//字符0的ASCII码为48(后面的数字以此类推)
        }
        else{
            cnt+=(int(a[i])-48)*n;
            n++;
        }
    }
    if(cnt%11==chk) cout<<"Right";
    else{
        for(int i=0;i<12;i++) cout<<a[i];
        if(cnt%11==10) cout<<'X';
        else cout<<cnt%11;
    }
    return 0;
}
这里空空如也



有帮助,赞一个