ccf:2013-12-02ISBN号码(应试技巧 +解题思路 + 满分代码)

应试技巧

  1. 题目分为算法题和模拟题,模拟题只需根据题目的意思模拟这个过程即可
  2. 理清问题要求的逻辑关系,再一步一步的写,不要遗漏要求

题目

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-v4MYXLl3-1635593166078)

解题思路

运用string类方便的读取字符串,熟练运用string的相关函数:string.size(),string.back()等等

注意int与字符之间的转换

代码实现

#include <iostream>
#include <algorithm>
#include <cstring>

using namespace std;

int main()
{
    string str;
    cin >> str;
    int sum = 0;
    int cnt = 1; //每次需要乘的数
    
    for (int i = 0; i < str.size() - 1; i ++)
    {
        if (str[i] != '-') sum += (str[i] - '0') * (cnt ++); //累计求和
    }
    
    sum %= 11;
    char res = sum + '0'; //注意整数和字符的转换

    if(sum == 10) res = 'X';

    if(str.back() == res) cout << "Right" << endl; //取最后一位元素进行判断
    else
    {
        str.back() = res; 
        cout << str;
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_51800570/article/details/121055249