C 排列四个4位二进制数的程序

C 排列四个4位二进制数的程序,c,C,我已经试过多次阅读这篇作业。我无法解释我们必须实现的目标 用C编写一个程序,按如下方式排列四个4位二进制数: 1001 1010 1000 1001 1111 对于每个显示,使用以下模式 0110 0**0 1001 *00* 1110 ***0 1001 *00* 1110 ***0 上面示例中的模式表示字母“B” 问题: 用5位二进制数绘制相同的图案 在程序中进行更改,使其打印A-Z 一旦你对问题有了一个清晰的定义(编程时总是最难的部分),然后只需循环通过位

我已经试过多次阅读这篇作业。我无法解释我们必须实现的目标

用C编写一个程序,按如下方式排列四个4位二进制数:

1001
1010
1000
1001
1111
对于每个显示,使用以下模式

0110    0**0
1001    *00*
1110    ***0
1001    *00*
1110    ***0
上面示例中的模式表示字母“B”

问题:

  • 用5位二进制数绘制相同的图案

  • 在程序中进行更改,使其打印A-Z


  • 一旦你对问题有了一个清晰的定义(编程时总是最难的部分),然后只需循环通过位

    位为1时打印
    *

    位为0时打印
    (空格)

    如何循环通过位(4位)

    #定义最大位(4)
    对于(大小i=最大位;i>0;i--)
    {
    
    如果(位&1的目的是能够打印出代表一个字符的像素。从B开始,然后对所有其他字母进行打印。这个图案看起来像B吗?给定了像素的限制数,它确实是B。如果使用5位,你可以做一些更接近B的事情。我会将第一个数字设为1110…那么问题是什么问题?@user3528438-这正是问题所在
    #define MAX_BITS (4)
    
    for( size_t i=MAX_BITS; i > 0; i-- )
    {
        if( bits & 1<i )
            printf( "*" );
        else
            printf( " " );
    }