1516: Loky的烦恼(简)

loky喜欢上一个女孩,女孩在loky眼中绝对是10分女。唯一有点遗憾的是女生有点近视,为了不影响她的美貌,所以她不想戴眼镜,这下问题来了--电脑上的数字她看不清楚。loky想如果自己能把这问题解决了,说不定女孩就喜欢上自己了。数字放大的模型loky已经搞定:数字

0123456789
在电脑上放大显示分别如下:

每个数字都是7行6列,最左边一列都是空格符,空白的位置均是空格符。但是程序loky不会写,现在作为好朋友兼程序员的你,出手帮帮他。

输入

多行输入。每行包括一个由数字0-9构成的字符串s,s长度不超过10000。

输出

每一行输入的字符串产生的输出描述如下: 

字符串的每个数字字符按放大形式输出。规定每一行只能输出10个数字字符,超过则换行输出,详见样例。

样例输入

0123456789
00123456789

样例输出


  ---        ----  ----         ----  ---- ----   ---   --- 
 |   |   |       |     | |   | |     |         | |   | |   |
 |   |   |       |     | |   | |     |         | |   | |   |
              ---  ----   ---   ---   ---         ---   --- 
 |   |   |   |         |     |     | |   |     | |   |     |
 |   |   |   |         |     |     | |   |     | |   |     |
  ---         ---- ----        ----   ---         ---  ---- 
  ---   ---        ----  ----         ----  ---- ----   --- 
 |   | |   |   |       |     | |   | |     |         | |   |
 |   | |   |   |       |     | |   | |     |         | |   |
                    ---  ----   ---   ---   ---         --- 
 |   | |   |   |   |         |     |     | |   |     | |   |
 |   | |   |   |   |         |     |     | |   |     | |   |
  ---   ---         ---- ----        ----   ---         --- 
  --- 
 |   |
 |   |
  --- 
     |
     |
 ---- 
题目详情:http://acm.hnust.edu.cn/JudgeOnline/problem.php?id=1516
题目分析:
           题目不是太难只要输出的时候格式不出错就行,笔者的代码用的是三维数组,当然也可以用
String来储存0-9对应的字符数字,只要在接受到数字输出对应的字符数字。

源代码如下:
#include<stdio.h>
#include<string.h>
char num[10][7][7]={//存储字符数字
{"  --- "," |   |"," |   |","      "," |   |"," |   |","  --- "},{"      ","   |  ","   |  ","      ","   |  ","   |  ","      "},
{" ---- ","     |","     |","  --- "," |    "," |    ","  ----"},{" ---- ","     |","     |"," ---- ","     |","     |"," ---- "},
{"      "," |   |"," |   |","  --- ","     |","     |","      "},{"  ----"," |    "," |    ","  --- ","     |","     |"," ---- "},
{"  ----"," |    "," |    ","  --- "," |   |"," |   |","  --- "},{" ---- ","     |","     |","      ","     |","     |","      "},
{"  --- "," |   |"," |   |","  --- "," |   |"," |   |","  --- "},{"  --- "," |   |"," |   |","  --- ","     |","     |"," ---- "}};
void print1(char in[])
{
    int n=strlen(in);
    int ct=n/10,pt=n%10;//计算输出行数ct,和最后一行是否为十pt
    for(int i=0;i<10*ct;i+=10)
    {
        for(int j=0;j<7;j++)//输出七行
        {
            for(int k=i;k<i+10;k++)//输出每一行
            {
                    printf("%s",num[in[k]-'0'][j]);//注意%c和%s的区别
            }
        printf("\n");
        }
    //printf("\n");
    }
if(pt)//判断最后一行的输出
{
    for(int j=0;j<7;j++)
        {
            for(int k=10*ct;k<n;k++)
            {


                    printf("%s",num[in[k]-'0'][j]);


            }
        printf("\n");
        }
}


}


int main()
{
    char  d[10000];
    while(scanf("%s",d)==1)
    {
        print1(d);
    }
    return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值