打了好久代码,但所有数它都输出
XXX
X.X
XXX
..X
XXX
#include<iostream>
#include<string>
using namespace std;
int main() {
int n,x=0;
string str;
char a[6][400];
cin>>n>>str;
for(int i=1;i<=n;i++) {
int k=4*i-3;
switch(str[i-1]) {
case'0':a[1][k]=a[1][k+1]=a[1][k+2]=a[2][k]=a[2][k+2]=a[3][k]=a[3][k+2]=a[4][k]=a[4][k+2]=a[5][k]=a[5][k+1]=a[5][k+2]='X';
a[2][k+1]=a[3][k+1]=a[4][k+1]='.';
case'1':a[1][k+2]=a[2][k+2]=a[5][k+2]=a[3][k+2]=a[4][k+2]='X';
a[1][k]=a[2][k]=a[2][k+1]=a[3][k]=a[3][k+1]=a[4][k]=a[4][k+1]=a[5][k]=a[5][k+1]=a[1][k+1]='.';
case'2':a[1][k+1]=a[1][k+2]=a[1][k]=a[2][k+2]=a[3][k]=a[3][k+2]=a[3][k+1]=a[4][k]=a[5][k]=a[5][k+1]=a[5][k+2]='X';
a[2][k]=a[2][k+1]=a[4][k+1]=a[4][k+2]='.';
case'3':a[1][k+1]=a[1][k+2]=a[1][k]=a[2][k+2]=a[3][k]=a[3][k+2]=a[3][k+1]=a[4][k+2]=a[5][k]=a[5][k+1]=a[5][k+2]='X';
a[2][k]=a[2][k+1]=a[4][k+1]=a[4][k]='.';
case'4':a[1][k+2]=a[1][k]=a[2][k+2]=a[2][k]=a[3][k+2]=a[3][k+1]=a[3][k]=a[4][k+2]=a[5][k+2]='X';
a[1][k+1]=a[4][k]=a[2][k+1]=a[4][k+1]=a[5][k]=a[5][k+1]='.';
case'5':a[1][k+1]=a[1][k+2]=a[1][k]=a[2][k]=a[3][k]=a[3][k+2]=a[3][k+1]=a[4][k+2]=a[5][k]=a[5][k+1]=a[5][k+2]='X';
a[2][k+2]=a[2][k+1]=a[4][k+1]=a[4][k]='.';
case'6':a[1][k+1]=a[1][k+2]=a[1][k]=a[2][k]=a[4][k]=a[3][k]=a[3][k+2]=a[3][k+1]=a[4][k+2]=a[5][k]=a[5][k+1]=a[5][k+2]='X';
a[2][k+2]=a[2][k+1]=a[4][k+1]='.';
case'7':a[1][k]=a[1][k+2]=a[2][k+2]=a[5][k+2]=a[3][k+2]=a[1][k+1]=a[4][k+2]='X';
a[2][k]=a[2][k+1]=a[3][k]=a[3][k+1]=a[4][k]=a[4][k+1]=a[5][k]=a[5][k+1]='.';
case'8':a[1][k+1]=a[2][k+2]=a[1][k+2]=a[1][k]=a[2][k]=a[4][k]=a[3][k]=a[3][k+2]=a[3][k+1]=a[4][k+2]=a[5][k]=a[5][k+1]=a[5][k+2]='X';
a[2][k+1]=a[4][k+1]='.';
case'9':a[1][k+1]=a[2][k+2]=a[1][k+2]=a[1][k]=a[2][k]=a[3][k]=a[3][k+2]=a[3][k+1]=a[4][k+2]=a[5][k]=a[5][k+1]=a[5][k+2]='X';
a[2][k+1]=a[4][k]=a[4][k+1]='.';
}
a[1][k+3]=a[2][k+3]=a[3][k+3]=a[4][k+3]=a[5][k+3]='.';
}
for(int i=1;i<=5;i++) {for(int j=1;j<4*n;j++) cout<<a[i][j]; cout<<endl;}
return 0;
}
是 switch 语句错了吗?? 求挑错!!
有点乱,大佬们忍一下。。
最后一个RE我也不知道怎么回事。。