#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int h,sum;
int a,p,aa[19];
char s[20];
do
{
sum=0;
scanf("%s",&s);
if(s[1]!='1'&&s[1]!='2')
{ printf("fake\n");
return 0;
}
switch(s[0])
{
case 'A' :aa[19]=1;break;
case 'B' :aa[19]=10;break;
case 'C' :aa[19]=19;break;
case 'D' :aa[19]=28;break;
case 'E' :aa[19]=37;break;
case 'F' :aa[19]=46;break;
case 'G' :aa[19]=55;break;
case 'H' :aa[19]=64;break;
case 'I' :aa[19]=39;break;
case 'J' :aa[19]=73;break;
case 'K' :aa[19]=82;break;
case 'L' :aa[19]=2;break;
case 'M' :aa[19]=11;break;
case 'N' :aa[19]=20;break;
case 'O' :aa[19]=48;break;
case 'P' :aa[19]=29;break;
case 'Q' :aa[19]=38;break;
case 'R' :aa[19]=47;break;
case 'S' :aa[19]=56;break;
case 'T' :aa[19]=65;break;
case 'U' :aa[19]=74;break;
case 'V' :aa[19]=83;break;
case 'W' :aa[19]=21;break;
case 'X' :aa[19]=3;break;
case 'Y' :aa[19]=12;break;
case 'Z' :aa[19]=30;break;
}
for(a=1;a<10;a++)
{
switch(s[a])
{
case '1':aa[a-1]=1;break;
case '2':aa[a-1]=2;break;
case '3':aa[a-1]=3;break;
case '4':aa[a-1]=4;break;
case '5':aa[a-1]=5;break;
case '6':aa[a-1]=6;break;
case '7':aa[a-1]=7;break;
case '8':aa[a-1]=8;break;
case '9':aa[a-1]=9;break;
case '0':aa[a-1]=0;break;
}
}
for(p=0;p<8;p++)
sum=sum+aa[p]*(8-p);
sum=sum+aa[8];
sum=sum+aa[19];
printf("%d",sum);
if((sum%10)!=0)
printf("fake\n");
else
printf("real\n");
sum=0;
}while(scanf("%s",&s)!=EOF);
return 0;
}
以上是原始碼,如果照原樣,會在line2出現w/a
如果把do...while改成while,則是第一行出現w/a
請求幫忙
謝謝