题意很难懂,读了很长时间。。。
AC代码:
1 #include<stdio.h> 2 #include<string.h> 3 4 int main() 5 { 6 int n, i, j, dna[10], a[42], t, p; 7 scanf("%d", &n); 8 while(n--) 9 { 10 for (i=0; i<10; i++) 11 { 12 scanf("%d", &dna[i]); 13 } 14 memset(a, 0, sizeof(a)); 15 a[20]=1; 16 printf(" . \n"); 17 for (i=1;i<50; i++) 18 { 19 p=0; 20 for (j=1; j<=40; j++) 21 { 22 t=a[j]; 23 a[j]=dna[p+a[j]+a[j+1]]; 24 p=t; 25 switch(a[j]) 26 { 27 28 case 0:printf(" ");break; 29 case 1:printf(".");break; 30 case 2:printf("x");break; 31 case 3:printf("W");break; 32 } 33 } 34 printf("\n"); 35 } 36 if (n) 37 { 38 printf("\n"); //每组后空行 39 } 40 } 41 return 0; 42 }