【C语言】七段显示器输出数字

1.题目要求
在这里插入图片描述
2.思路
step1:需要一个10×7的二维数组来确定每个数字该显示的部分,比如数字9需要在题目所示图片的0,1,2,3,5,6的位置显示 - 或者 | ,因为一共有0-9(10个数字,每个数字有7个位置要确定),所以需要10×7的二维数组

step2:手动地将所有的数字显示形状在纸上画出来,再根据图片将0-9的数字转换成数组形式,如下:
int num[10][7]={
{1,1,1,1,1,1,0},
{0,1,1,0,0,0,0},
{1,1,0,1,1,0,1},
{1,1,1,1,0,0,1},
{0,1,1,0,0,1,1},
{1,0,1,1,0,1,1},
{1,0,1,1,1,1,1},
{1,1,1,0,0,0,0},
{1,1,1,1,1,1,1},
{1,1,1,1,0,1,1}};

step3:根据需要显示的数字一行一行的(共5行)将它打印出来

3.代码

#include <stdlib.h>
int num[10][7]={{1,1,1,1,1,1,0},
                        {0,1,1,0,0,0,0},
                        {1,1,0,1,1,0,1},
                        {1,1,1,1,0,0,1},
                        {0,1,1,0,0,1,1},
                        {1,0,1,1,0,1,1},
                        {1,0,1,1,1,1,1},
                        {1,1,1,0,0,0,0},
                        {1,1,1,1,1,1,1},
                        {1,1,1,1,0,1,1}};
/*从第一行的代表0的开始,如果0的位置需要输出,
第一行需要打印 '空格-空格',否则打印 '空格空格空格\n'
以此类推
*/
int main()
{
   
   int x;
   while(scanf("%d",&x)!=EOF)
   {
       if(num[x][0]) printf(" - \n");
        else printf("   \n");
       if(num[x][5]) printf("| ");
        else printf("  ");
       if(num[x][1]) printf("|\n");
        else printf(" \n");
       if(num[x][6]) printf(" - \n");
        else printf("   \n");
       if(num[x][4]) printf("| ");
        else printf("  ");
       if(num[x][2]) printf("|\n");
        else printf(" \n");
       if(num[x][3]) printf(" - \n");
        else printf("   \n");
   }
   return 0;
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值