P1055 求解决,60分,找不出错误;

P1055 [NOIP2008 普及组] ISBN 号码

rsrs @ 2022-12-04 22:03:34


#include<stdio.h>
int main()
{
    int sum = 0, i, j = 0;
    int a[10];
    char b[100];
    scanf_s("%s", b, 100);
    for (i = 0, j = 0; i <= 100; i++)
    {
        if (b[i] >= 48 && b[i] <= 57)
        {
            b[i] = b[i] - 48;
            a[j] = b[i];
            j++;
        }
        else if (b[i] == 'X')
            a[9] = 'X';
    }

    for (i = 0; i < 9; i++)
        sum = sum + a[i] * (i + 1);
    sum = sum % 11;

    if (sum == 10)
        sum = 'X';
        if (sum == a[9])
            printf("Right");
        else if(sum=='X')
            printf("%d-%d%d%d-%d%d%d%d%d-%c", a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], sum);
        else if (sum != 'X')
            printf("%d-%d%d%d-%d%d%d%d%d-%d", a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], sum);
}

by YYYR_lzy_yituiyi @ 2022-12-06 08:29:35

看点找错改 我的30,Right全对了...


by YYYR_lzy_yituiyi @ 2022-12-06 08:34:04

但我头文件和你不一样

#include<bits/stdc++.h>
using namespace std;
char a[11];
int main()

|