编写c++代码,要求:ISBN13的校验码生产规则是:前12位数依次乘以1和3,然后求它们的和除以10的余数,最后用10减去这个余数,就得到了校验码。如果余数为0,则校验码为0。并且约定输入的前四部分的每位数字之间用空格隔开,输出的完整ISBN13编码的各个数字之间没有分隔符号。
时间: 2023-06-03 21:02:14 浏览: 138
编程C++代码
好的,这是一个关于编写C代码的问题,我可以回答。根据你的要求,我可以编写以下C代码:
```
#include <stdio.h>
int main() {
int num[13];
int i, sum = 0, checkcode;
printf("请输入前12位数字:");
for (i = 0; i < 12; i++) {
scanf("%1d", &num[i]);
}
for (i = 0; i < 12; i++) {
if (i % 2 == 0) {
sum += num[i];
} else {
sum += num[i] * 3;
}
}
checkcode = 10 - (sum % 10);
if (checkcode == 10) {
checkcode = 0;
}
num[12] = checkcode;
printf("ISBN13编码为:");
for (i = 0; i < 13; i++) {
printf("%d", num[i]);
}
printf("\n");
return 0;
}
```
编译运行后,输入前12位数字,程序将输出完整的ISBN13编码。
阅读全文