http://poj.org/problem?id=1102
简单模拟
1
#include
<
stdio.h
>
2 #include < string .h >
3 char n1[ 11 ] = " - -- ----- " ;
4 char n2[ 21 ] = " || | | |||| | ||||| " ;
5 char n3[ 11 ] = " ----- -- " ;
6 char n4[ 21 ] = " || || | | ||| ||| | " ;
7 char n5[ 11 ] = " - -- -- -- " ;
8 void pr1( char * m, char * n, int s)
9 {
10 for ( int i = 0 ;i < strlen(m);i ++ )
11 {
12 if (i > 0 ) printf( " " );
13 printf( " " );
14 for ( int j = 0 ;j < s;j ++ )
15 printf( " %c " ,n[m[i] - ' 0 ' ]);
16 printf( " " );
17 }
18 printf( " \n " );
19 }
20 void pr2( char * m, char * n, int s)
21 {
22 for ( int k = 0 ;k < s;k ++ )
23 {
24 for ( int i = 0 ;i < strlen(m);i ++ )
25 {
26 if (i > 0 ) printf( " " );
27 printf( " %c " ,n[ 2 * (m[i] - ' 0 ' )]);
28 for ( int j = 0 ;j < s;j ++ ) printf( " " );
29 printf( " %c " ,n[ 2 * (m[i] - ' 0 ' ) + 1 ]);
30 }
31 printf( " \n " );
32 }
33 }
34 int main()
35 {
36 int n;
37 char m[ 9 ];
38 memset(m, ' \0 ' , sizeof (m));
39 while (scanf( " %d %s " , & n,m) == 2 && n && m)
40 {
41 pr1(m,n1,n);
42 pr2(m,n2,n);
43 pr1(m,n3,n);
44 pr2(m,n4,n);
45 pr1(m,n5,n);
46 memset(m, ' \0 ' , sizeof (m));
47 printf( " \n " );
48 }
49 return 0 ;
50 }
2 #include < string .h >
3 char n1[ 11 ] = " - -- ----- " ;
4 char n2[ 21 ] = " || | | |||| | ||||| " ;
5 char n3[ 11 ] = " ----- -- " ;
6 char n4[ 21 ] = " || || | | ||| ||| | " ;
7 char n5[ 11 ] = " - -- -- -- " ;
8 void pr1( char * m, char * n, int s)
9 {
10 for ( int i = 0 ;i < strlen(m);i ++ )
11 {
12 if (i > 0 ) printf( " " );
13 printf( " " );
14 for ( int j = 0 ;j < s;j ++ )
15 printf( " %c " ,n[m[i] - ' 0 ' ]);
16 printf( " " );
17 }
18 printf( " \n " );
19 }
20 void pr2( char * m, char * n, int s)
21 {
22 for ( int k = 0 ;k < s;k ++ )
23 {
24 for ( int i = 0 ;i < strlen(m);i ++ )
25 {
26 if (i > 0 ) printf( " " );
27 printf( " %c " ,n[ 2 * (m[i] - ' 0 ' )]);
28 for ( int j = 0 ;j < s;j ++ ) printf( " " );
29 printf( " %c " ,n[ 2 * (m[i] - ' 0 ' ) + 1 ]);
30 }
31 printf( " \n " );
32 }
33 }
34 int main()
35 {
36 int n;
37 char m[ 9 ];
38 memset(m, ' \0 ' , sizeof (m));
39 while (scanf( " %d %s " , & n,m) == 2 && n && m)
40 {
41 pr1(m,n1,n);
42 pr2(m,n2,n);
43 pr1(m,n3,n);
44 pr2(m,n4,n);
45 pr1(m,n5,n);
46 memset(m, ' \0 ' , sizeof (m));
47 printf( " \n " );
48 }
49 return 0 ;
50 }