问题 I: LC-显示器2297


这题其实也是暴力枚举,但是不能一个数字一个数字输出,要一行一行输出,这就要对每种情况进行遍历
建议还是自己写吧,一行一行输出就彳亍了,也不算难题,给代码太长了也不一定能理解。

点击查看代码
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main()
{
	int a[10];
	int n,i,s,j,t,k;
	while(scanf("%d%d",&s,&n)!=EOF)
	{
		if(s==0 && n==0) break;
		t=0;
		if(n==0)
		{
			t=1;
			a[t]=0;
		}
		else
		{
			while(n!=0)
			{
				t++;
				a[t]=n%10;
				n=n/10;
			}
		}
		for(j=t;j>=1;j--)
		{
			if(a[j]==1 || a[j]==4)
			{
				for(i=1;i<=s+2;i++)
				{
					printf(" ");
				}
			}
			else
			{
				printf(" ");
				for(i=2;i<=s+1;i++)
				{
					printf("-");
				}
				printf(" ");
			}
			printf(" ");
		}
		printf("\n");
		k=s;
		while(k--)
		{
			for(j=t;j>=1;j--)
			{
				if(a[j]==5 || a[j]==6)
				{
					printf("|");
					for(i=2;i<=s+2;i++)
					{
						printf(" ");
					}
				}
				else if(a[j]==1 || a[j]==2 || a[j]==3 || a[j]==7)
				{
					for(i=2;i<=s+2;i++)
					{
						printf(" ");
					}
					printf("|");
				}
				else
				{
					printf("|");
					for(i=2;i<=s+1;i++)
					{
						printf(" ");
					}
					printf("|");
				}
				printf(" ");
			}
			printf("\n");
		}
		for(j=t;j>=1;j--)
		{
			if(a[j]==1 || a[j]==7 || a[j]==0)
			{
				for(i=1;i<=s+2;i++)
				{
					printf(" ");
				}
			}
			else
			{
				printf(" ");
				for(i=2;i<=s+1;i++)
				{
					printf("-");
				}
				printf(" ");
			}
			printf(" ");
		}
		printf("\n");
		k=s;
		while(k--)
		{
			for(j=t;j>=1;j--)
			{
				if(a[j]==2)
				{
					printf("|");
					for(i=2;i<=s+2;i++)
					{
						printf(" ");
					}
				}
			
				else if(a[j]==1 || a[j]==4 || a[j]==3 || a[j]==7 || a[j]==5 || a[j]==9)
				{
					for(i=2;i<=s+2;i++)
					{
						printf(" ");
					}
					printf("|");
				}
				else
				{
					printf("|");
					for(i=2;i<=s+1;i++)
					{
						printf(" ");
					}
					printf("|");
				}
				printf(" ");
			}
			printf("\n");
		}
		for(j=t;j>=1;j--)
		{
			if(a[j]==1 || a[j]==4 || a[j]==7)
			{
				for(i=1;i<=s+2;i++)
				{
					printf(" ");
				}
			}
			else
			{
				printf(" ");
				for(i=2;i<=s+1;i++)
				{
					printf("-");
				}
				printf(" ");
			}
			printf(" ");
		}
		printf("\n");
		printf("\n");
	}
	return 0;
}

posted @ 2022-11-10 09:29  美羊羊给沸羊羊搬砖  阅读(97)  评论(0)    收藏  举报