P5730 【深基5.例10】显示屏

题目描述

液晶屏上,每个阿拉伯数字都是可以显示成 3×5 的点阵的(其中 X 表示亮点,. 表示暗点)。现在给出数字位数(不超过 100)和一串数字,要求输出这些数字在显示屏上的效果。数字的显示方式如同样例输出,注意每个数字之间都有一列间隔。

代码

用五个二维数组分别存储每个数字每一行的三个字母,最后一行一行的输出就好了。

#include<bits/stdc++.h>

using namespace std;

int main(){
	int n,i;
	char a[100],
	b1[10][4]={"XXX","..X","XXX","XXX","X.X","XXX","XXX","XXX","XXX","XXX"},
	b2[10][4]={"X.X","..X","..X","..X","X.X","X..","X..","..X","X.X","X.X"},
	b3[10][4]={"X.X","..X","XXX","XXX","XXX","XXX","XXX","..X","XXX","XXX"},
	b4[10][4]={"X.X","..X","X..","..X","..X","..X","X.X","..X","X.X","..X"},
	b5[10][4]={"XXX","..X","XXX","XXX","..X","XXX","XXX","..X","XXX","XXX"};
	cin>>n>>a;
	for(i=0;i<n;i++){
		cout<<b1[a[i]-'0'];
		if(i<n-1) cout<<'.';
		else cout<<endl;
	}
	for(i=0;i<n;i++){
		cout<<b2[a[i]-'0'];
		if(i<n-1) cout<<'.';
		else cout<<endl;
	}for(i=0;i<n;i++){
		cout<<b3[a[i]-'0'];
		if(i<n-1) cout<<'.';
		else cout<<endl;
	}for(i=0;i<n;i++){
		cout<<b4[a[i]-'0'];
		if(i<n-1) cout<<'.';
		else cout<<endl;
	}for(i=0;i<n;i++){
		cout<<b5[a[i]-'0'];
		if(i<n-1) cout<<'.';
		else cout<<endl;
	}
	return 0;
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值