GNOH @ 2022-03-18 16:36:56
#include<stdio.h>
int main()
{
int i,j=0,X;
int a[13];
char s[13];
scanf("%s",&s);
for(i=0;i<13;i++)
{
if(i==1||i==5||i==11)
continue;
a[j]=s[i]-'0';
j++;
}
for(i=0;i<j-1;i++)
{
// printf("%d",a[i]);
X+=a[i]*(i+1);
}
X=X%11;
// printf("%d\n",X);
if(X==10)
{
if(s[12]=='X')
printf("Right");
else
{
s[12]='X';
printf("%s",s);
}
}
else
{
if(a[9]==X)
{
printf("Right");
}
else
{
s[12]=X+48;
printf("%s",s);
}
}
return 0;
}
by Apple_Pie @ 2022-03-18 16:50:31
@GNOH char用%s就不对,而且你的第二个循环加了a[0]到a[10],显然不对。
by GNOH @ 2022-03-22 14:34:34
@Apple_Pie 字符型数组可以用%s啊,为什么不对?第二个循环只加到了a[8]啊
by Apple_Pie @ 2022-03-22 17:38:56
@GNOH 你想加上数字,但字符也被你加上了