这个测试点二怎么过?
#include<stdio.h>
int main()
{
char a[20];
int i,n;
scanf("%d", &n);
int p[17] = {7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};
int check;
int j; int flash = 1; int cnt = 0;
for (i = 0; i < n; i++)
{
scanf("%s", a);
flash = 1; check = 0;
for (j = 0; j < 17; j++)
{
check = check + (a[j] -'0') * p[j];
if (a[j] - '0' < 0 || a[j] - '0' >9)
{
flash = 0; break;
}
}
check %= 11;
char m[] = {'1','0','x','9','8','7','6','5','4','3','2'};
char q = m[check];
if (a[17] != q)
{
flash = 0;
}
if (flash == 0)
{
printf("%s", a);
printf("\n");
}
else if (flash == 1)
{
cnt++;
}
}
if (cnt == n)
{
printf("All passed");
}
return 0;
}