#include <stdio.h>
#include <stdlib.h>
#include<string.h>
#define N 13
int main()
{
int i,j=1,s=0;
char C[N];
for(i=0;i<N;i++)
{
scanf("%c",&C[i]);
if(i==1||i==5||i==11)
continue;
else if(i!=12)
{
s+=((C[i]-'0')*(j++));
}
}
for(i=0;i<N;i++)
{
if((C[12]-'0')==(s%11))
{
printf("Right");break;
}
else
{
if(i!=12)
printf("%c",C[i]);
else
{
if((C[12]-'0')==10)
printf("X");
else
printf("%c",'0'+(s%11));
}
}
}
return 0;
}
为什么输出结果是对的测试却过不了?
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- 格戮 2020-03-05 09:02关注
if((C[12]-'0')==(s%11))
如果C[12]是X,s%11是10的情况,就会出现错误
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥20 sub地址DHCP问题
- ¥15 delta降尺度计算的一些细节,有偿
- ¥15 Arduino红外遥控代码有问题
- ¥15 数值计算离散正交多项式
- ¥30 数值计算均差系数编程
- ¥15 redis-full-check比较 两个集群的数据出错
- ¥15 Matlab编程问题
- ¥15 训练的多模态特征融合模型准确度很低怎么办
- ¥15 kylin启动报错log4j类冲突
- ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大