# B4067 [GESP202412 三级] 打印数字## 题目背景## 题目描述小杨为数字 $0,1,2$ 和 $3$ 设计了一款表示形式每个数字占用了 $5\times 5$ 的网格。数字 $0,1,2$ 和 $3$ 的表示形式如下plain..... ****. ..... ......***. ****. ****. ****..***. ****. ..... ......***. ****. .**** ****...... ****. ..... .....小杨想请你将给定的数字 $n$ 转换为对应的表示形式。## 输入格式第一行包含一个非负整数代表 $n$。## 输出格式输出对应的表示形式。## 输入输出样例 #1### 输入 #112230### 输出 #1****.....................****.****.****.****..***.****.................***.****..****.********..***.****.....................## 说明/提示对于全部数据保证有 $0\le n\le 10^6$且 $n$ 仅由数字 $0,1,2,3$ 组成。/* B4067 [GESP202412 三级] 打印数字 原数组 0 1 2 3 ..... ****. ..... ..... .***. ****. ****. ****. .***. ****. ..... ..... .***. ****. .**** ****. ..... ****. ..... ..... */ #includebits/stdc.h using namespace std; string pat[4][5]{ //因为输出都是横向输出的哦 需要把原数组的字符串内容转换行列变换更方便输出 //这样可以方便输出‘0’的第一层字符 .....‘ 1的第一层****.同理往后推 {.....,.***.,.***.,.***.,.....}, {****.,****.,****.,****.,****.}, {.....,****.,.....,.****,.....}, {.....,****.,.....,****.,.....}, }; int main() { //当成字符串进行读入 string s; cin s; //外层循环控制当前前‘数字字符’的5层输出字符串 for (int i 0; i 5; i) { //内层循环输出字符串每个‘数字字符’的 第i层最多五层字符串 for (int j 0; j s.length(); j){ char c s[j];//方便后续做运算c - 0变整型 cout pat[c - 0][i]; //c - 0相当于行i相当于列 } cout endl; } return 0; }