打印数字艺术字

本文介绍了一段C语言和Java代码,用于打印特定年份的艺术字。原代码打印1949,经改造后打印2019。通过调整字符布局和循环结构,实现了数字的艺术化呈现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

7-8 打印数字艺术字 (5分)
以下程序打印“1949”的艺术字,请改造以下代码,使之打印“2019”的艺术字。请注意不要额外删除、增加、改变变量,也请注意要打印空格。

#include <stdio.h>
int main()
{
    char space = ' ', mark = '|';
    printf("\n");
    // 1
    printf("%c%c%c\n", mark, space, space);
    printf("%c%c%c\n", mark, space, space);
    printf("%c%c%c\n", mark, space, space);
    printf("%c%c%c\n", mark, space, space);
    printf("%c%c%c\n", mark, space, space);
    printf("\n");
    // 9
    printf("%c%c%c\n", mark, mark, mark);
    printf("%c%c%c\n", mark, space, mark);
    printf("%c%c%c\n", mark, mark, mark);
    printf("%c%c%c\n", space, space, mark);
    printf("%c%c%c\n", mark, mark, mark);
    printf("\n");
    // 4
    printf("%c%c%c\n", mark, space, mark);
    printf("%c%c%c\n", mark, space, mark);
    printf("%c%c%c\n", mark, mark, mark);
    printf("%c%c%c\n", space, space, mark);
    printf("%c%c%c\n", space, space, mark);
    printf("\n");
    // 9
    printf("%c%c%c\n", mark, mark, mark);
    printf("%c%c%c\n", mark, space, mark);
    printf("%c%c%c\n", mark, mark, mark);
    printf("%c%c%c\n", space, space, mark);
    printf("%c%c%c\n", mark, mark, mark);
    printf("\n");
    return 0;
}
输入格式:
本题无输入。
输出格式:
遵循原有代码的格式。
输入样例:   
输出样例:
打印效果如下:

|||
  |
|||
|  
|||

|||
| |
| |
| |
|||

|  
|  
|  
|  
|  

|||
| |
|||
  |
|||

代码1

public class Main{
    public static void main(String[] args){
        char space = ' ', mark = '|';
        System.out.println("");
        //2
        System.out.printf("%c%c%c\n",mark,mark,mark);
        System.out.printf("%c%c%c\n",space,space,mark);
        System.out.printf("%c%c%c\n",mark,mark,mark);
        System.out.printf("%c%c%c\n",mark,space,space);
        System.out.printf("%c%c%c\n",mark,mark,mark);
        System.out.println("");
        //0
        System.out.printf("%c%c%c\n",mark,mark,mark);
        System.out.printf("%c%c%c\n",mark,space,mark);
        System.out.printf("%c%c%c\n",mark,space,mark);
        System.out.printf("%c%c%c\n",mark,space,mark);
        System.out.printf("%c%c%c\n",mark,mark,mark);
        System.out.println("");
        //1
        for(int j=0;j<5;j++)
        System.out.printf("%c%c%c\n",mark,space,space);
        System.out.println("");
        //9
        System.out.printf("%c%c%c\n",mark,mark,mark);
        System.out.printf("%c%c%c\n",mark,space,mark);
        System.out.printf("%c%c%c\n",mark,mark,mark);
        System.out.printf("%c%c%c\n",space,space,mark);
        System.out.printf("%c%c%c\n",mark,mark,mark);
        System.out.println("");
    }
}

程序代码(经过调整,根据代码1改编)

public class Main{
    public static void main(String[] args){
        char space = ' ', mark = '|';//思路:先画出草图,再根据行列关系分析,并缩减代码行数。
        for(int i=1;i<=25;i++)
        if(i%6==1)//i对6求余等于1,因为每6行就有1个空行。
        System.out.println("");
        else if((i<10&&i%2==0)||i==12||(i>=20&&i%2==0))
        System.out.printf("%c%c%c\n",mark,mark,mark);
        else if(i==3||i==23)//i是3或23
        System.out.printf("%c%c%c\n",space,space,mark);
        else if(i==5)//i=5
        System.out.printf("%c%c%c\n",mark,space,space);
        else if(i==14)//i=14
        for(int j=0;j<5;j++)
        System.out.printf("%c%c%c\n",mark,space,space);
        else if(i==9)//i=9
        for(int k=0;k<3;k++)
        System.out.printf("%c%c%c\n",mark,space,mark);
        else if(i==21)//i=21
        System.out.printf("%c%c%c\n",mark,space,mark);
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

量子代码时空

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值