#include <stdio.h>
char NUMDISPLAY[5][10][4] =
{
" - ", " ", " - ", " - ", " ", " - ", " - ", " - ", " - ", " - ",
"| |", " |", " |", " |", "| |", "| ", "| ", " |", "| |", "| |",
" ", " ", " - ", " - ", " - ", " - ", " - ", " ", " - ", " - ",
"| |", " |", "| ", " |", " |", " |", "| |", " |", "| |", " |",
" - ", " ", " - ", " - ", " ", " - ", " - ", " ", " - ", " - "
};
void lcDisplay(int size,int num)
{
int i,j,k;
int row,col;
char display[5][10][3]={""};
int array[10]={0};
int length=1;
if(num==0) array[0]=0;
else{
for(i=0;num>0;i++)
{
array[i] = num%10;
num = num/10;
}
length = i;
}
for(i=length-1;i>=0;i--)
{
for(j=0;j<5;j++)
{
for(k=0;k<3;k++)
{
display[j][length-i-1][k] = NUMDISPLAY[j][array[i]][k];
}
}
}
for(i=0;i<5;i++)
{
row = (i%2==1) ? 1 : size;
while(row <= size)
{
for(j=0;j<length;j++)
{
for(k=0;k<3;k++)
{
col = (k%2==1) ? 1 : size;
while(col<=size){
printf("%c",display[i][j][k]);
col++;
}
}
if(j<length-1) printf(" ");
}
printf("\n");
row++;
}
}
}
int main()
{
int size, num;
while(scanf("%d %d",&size,&num))
{
if(size==0 && num==0) break;
lcDisplay(size,num);
printf("\n");
}
return 0;
}
UVa 706 LC-Display
最新推荐文章于 2019-07-14 07:24:17 发布