#include <stdio.h>
#include <stdlib.h>
int getEAN(char *ean){
int i,sum1=0,sum2=0,m,n;
for(i=0;i<12;i++){
n=i;
if(n%2!=0){
sum1+=ean[n];
}
else
sum2+=ean[n];
}
int b;
b=sum1*3+sum2;
int c=b%10;
int x=(10-c)%10;
return x;
}
int main(){
char a[12];
int i;
for(i=0;i<12;i++){
scanf("%s",&a[i]);
}
printf("%d",getEAN(a));
return 0;
}
死循环
代码修改如下
#include <stdio.h>
#include <stdlib.h>
int getEAN(char *ean)
{
int i,sum1=0,sum2=0,m,n;
for(i=0; i<12; i++)
{
n=i;
if(n%2!=0)
{
sum1+=ean[n];
}
else
sum2+=ean[n];
}
int b;
b=sum1*3+sum2;
int c=b%10;
int x=(10-c)%10;
return x;
}
int main()
{
char a[12];
int j;
for(j=0; j<12; j++)
{
a[j]=getchar();
}
printf("%d",getEAN(a));
return 0;
}