多语言展示
当前在线:650今日阅读:60今日分享:41

怎样用C++判断输入的ISBN校验码是否正确

每一本书都有一个ISBN码,ISBN的格式为“x-xxx-xxxxx-x”,它包括9位数字、1位校验码和3位分隔符,最后一位是校验码,例如0-670-82164-4,最后一位数字4就是校验码。用首位数字乘以1加上次位数字乘以2……以此类推,将所得的结果用11求余,所得的余数即为校验码,如果余数为10,则校验码为X。如何计算一ISBN的校验码,判断所给的校验码是否正确呢?小编以C++为例,与大家分享编程经验。
工具/原料

C++

方法/步骤
1

输入窗口中输入一个ISBN码,计算机判断它的校验码是否正确,如果正确则输出校验码正确,如果错误,则输出正确的ISBN码。

2

定义三个整型变量,实现计数、乘积和保存总数和。

3

定义两个字符型变量,保存ISBN的各字符,以及计算出校验码的值。

4

接着,将ISBN的各字符输入到变量中,用for循环实现输入。

5

逐个读入ISBN字符,保存在数组m中。

6

用for循环控制求和,计算出ISBN各位数字乘以系数后的累加和。

7

用求余的方法,计算出校验码的数值。

8

将数值转换为字符,保存在变量c中。

9

如果计算出的校验码值是10,则将值更改为X。

10

用if语句判断,如果校验码正确,则输出提示校验码正确。

11

最后,如果校验码错误,则输出正确的ISBN码值。

12

测试程序,当输入ISBN的校验码正确则输出校验码正确,如果错误则输出正确的ISBN码。

注意事项

作者声明:本篇经验系本人辛勤劳动的原创成果,未经许可,谢绝转载。

推荐信息