80分,求调

P1055 [NOIP2008 普及组] ISBN 号码

Eletronic_Monkey @ 2024-10-22 22:07:03

#include<stdio.h>
int main()
{
    char str[14];
    scanf("%s",str);
    int a,b;
    a=(str[0]-48)*1+(str[2]-48)*2+(str[3]-48)*3+(str[4]-48)*4+(str[6]-48)*5+(str[7]-48)*6+(str[8]-48)*7+(str[9]-48)*8+(str[10]-48)*9;
    b=a%11;
    if(b==str[12]-48)
    {
        printf("Right");
    }
    else if(b==10)
    {
        str[12]=120;
        printf("%s",str);
    }
    else 
    {
        str[12]=b+48;
        printf("%s",str);
    }
    return 0;
    }

by HZC321 @ 2024-10-23 00:28:55

@Hope_to_grow

#include<stdio.h>
int main()
{
    char str[14];
    scanf("%s",str);
    int a,b;
    a=(str[0]-48)*1+(str[2]-48)*2+(str[3]-48)*3+(str[4]-48)*4+(str[6]-48)*5+(str[7]-48)*6+(str[8]-48)*7+(str[9]-48)*8+(str[10]-48)*9;
    b=a%11;
    if(b==str[12]-48||(b==10&&str[12]==88))//如果str[12]就是"X"直接输出
    {
        printf("Right");
    }
    else if(b==10)
    {
        str[12]=88;//Ascll码中大写"X"是88
        printf("%s",str);
    }
    else 
    {
        str[12]=b+48;
        printf("%s",str);
    }
    return 0;
    }

by Eletronic_Monkey @ 2024-10-23 00:36:20

@HZC321 非常感谢!


|