实现这么一个函数:传入一个int值,在屏幕输出类似LED显示屏效果的字母拼图,例如:

输入1234567890,输出:

请注意每个字符的固定宽度和高度,两个数字间保留一个空格。

函数名:void LEDprint(int num);

此题是表驱动方法的典型应用。

#include<iostream>
#include<string>
#include<vector>
#include<algorithm>
using namespace std;
//每个字符宽度为5,长度为7
string LEDarray[][]={
{" --- ", //
"| |",
"| |",
"| |",
"| |",
"| |",
" --- "}, {" ", //
" |",
" |",
" ",
" |",
" |",
" "}, {" --- ", //
" |",
" |",
" --- ",
"| ",
"| ",
" --- "}, {" --- ",
" |",
" |",
" --- ",
" |",
" |",
" --- "}, {" ",
"| |",
"| |",
" --- ",
" |",
" |",
" "}, {" --- ",
"| ",
"| ",
" --- ",
" |",
" |",
" --- "}, {" --- ",
"| ",
"| ",
" --- ",
"| |",
"| |",
" --- "}, {" --- ",
" |",
" |",
" ",
" |",
" |",
" "}, {" --- ",
"| |",
"| |",
" --- ",
"| |",
"| |",
" --- "}, {" --- ",
"| |",
"| |",
" --- ",
" |",
" |",
" --- "}
}; void LEDPrint(int num)
{
if(num<)
return;
char str[]={'\0'};
itoa(num,str,); int len=strlen(str);
string (*LED)[]=new string[len][]; for(int i=;i<len;i++)
{
int index=str[i]-'';//重点在这里
for(int j=;j<;j++)
{
LED[i][j]=LEDarray[index][j];
}
} for(int j=;j<;j++)
{
for(int i=;i<len;i++)
{
cout<<LED[i][j]<<" ";
}
cout<<endl;
}
/*
这里不能delete,因为后面的7,不能new出来的,
for(int i=0;i<len;i++)
delete[] LED[i]; */
delete[] LED;
} int main()
{
cout<<"input a number"<<endl;
int num;
while(cin>>num)
{
LEDPrint(num);
}
cout<<endl<<endl;
}

唯一值得注意的地方是delete:

  只需delete[] LED即可。后面的7不是new出来的,如果delete程序会运行错误
还有一点
还有一点,char的大小为什么是:
char str[11]
因为int类型的最大的只有10位,我们开辟11就够了。
参考:http://blog.chinaunix.net/uid-27034868-id-3811600.html

c显示数字的LED(数字转LED)的更多相关文章

  1. 一个简易的 LED 数字时钟实现方法

    这个应该是已经有很多人做过的东西,我应该只是算手痒,想写一下,所以,花了点时间折腾了这个,顺便把 Dark Mode 的处理也加上了. 首先可以很明确的一点,这个真没技术含量存在,只是需要点耐心. L ...

  2. WPF中StringFormat的用法--显示特定位数的数字

    原文:WPF中StringFormat的用法--显示特定位数的数字 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/huangli321456/art ...

  3. Oracle 把秒转成时分秒格式(hh24:mm:ss);检测字符串是否是数字;字符串转换为数字

    不说废话,贴代码: CREATE OR REPLACE FUNCTION to_time(sec IN NUMBER) RETURN VARCHAR2 IS /*把秒转成时分秒格式 auth lzpo ...

  4. php实现数字格式化,数字每三位加逗号的功能函数

    原地址:http://www.jb51.net/article/73781.htm php实现数字格式化,数字每三位加逗号的功能函数,具体代码如下: ? 1 2 3 4 5 6 7 8 9 10 11 ...

  5. oracle 非数字型转数字型

    原文:oracle 非数字型转数字型 oracle中如果一个字段内容不全是数字型 可以通过以下方式过滤 to_number(substr(translate(a.vital_signs_cvalues ...

  6. 几个有用的javascript(日期比较,数字验证,数字和汉字长度计算)

    1:日期大Js代码 //人员失效职位日期是否小于组织失效日期 function perDateInvalidate(){ var flag = true; //组织失效日期 var orgDate = ...

  7. Perl字符集[\d\D]表示任何字符(所有数字和非数字,包括换行符),“.”表示除了换行符以外的所有字符。

    Perl字符集[\d\D]表示任何字符(所有数字和非数字,包括换行符),“.”表示除了换行符以外的所有字符.

  8. JAVA处理数字与中文数字互转(最大处理数字不超过万兆即:9999999999999999.9999)

    package practice; import java.util.Arrays; /** * 数字与中文数字互转(最大处理数字不超过万兆即:9999999999999999.9999) * @au ...

  9. Commercial Lighting: LED Ceiling Light, LED Ceiling Light

    Unlike ceiling lamps, floor lamps, chandeliers, lamps that can sometimes rely on "faces", ...

  10. C++中使用sstream进行类型转换(数字字符串转数字、数字转数字字符串)

    1.sstream知识 sstream即字符串流.在使用字符串流sstream时,需要先引入相应的头文件 "#include <sstream>" 基本操作 // 引入 ...

随机推荐

  1. Android应用开发基础篇(14)-----自定义标题栏

    一.概述 每一个应用程序默认的标题栏(注意与状态栏的区别)只有一行文字(新建工程时的名字),而且颜色.大小等都是固定的,给人的感觉比较单调.但当程序需要美化的时候,那么修改标题栏是就是其中一项内容,虽 ...

  2. 自己的第一个android应用(天气)

    主界面代码 package com.example.weather; import android.os.Bundle; import android.app.Activity; import and ...

  3. python 类属性、对象属性

    类的普通属性: dir(Myclass), 返回一个key列表: Myclass.__dir__,返回一个字典: 1.类的数据属性: 2.类的方法: 类的特殊属性: 1.Myclass.__name_ ...

  4. 磁盘性能,你可能不知道的IOPS计算方法

    每个I/O 请求到磁盘都需要若干时间.主要是因为磁盘的盘边必须旋转,机头必须寻道.磁盘的旋转常常被称为”rotational delay”(RD),机头的移动称为”disk seek”(DS).一个I ...

  5. PHP发送短信如何实现?

    最近要用php发送和接收短信,用户订单要用短信通知一类的功能,网上看了好多短信平台感觉都不靠谱. 也测试了很多代码,下面把几款PHP发送短信好用的分享给大家: PHP发送短信方法一(比较好,推荐) / ...

  6. Android 开发笔记“程序安装包APK的制作”

    资源来源:http://blog.csdn.net/qualcent/article/details/6959547 完成Android项目后,需要将程序打包成APK文件(Android Packag ...

  7. night Mode 夜间模式css

    *,*:before,*:after,html[mode='nightmode'] * { color: #61615f !important; border-color: #212a32 !impo ...

  8. activemq下activemq.bat不能启动

    今天下载了一个apache-activemq-5.5.0-bin.rar解压缩后双击/bin目录下的activemq.bat批处理文件发现启动窗口一闪而过无法启动,最后找到原因是因为在环境变量-系统变 ...

  9. [置顶] MongoDB 分布式操作——分片操作

    MongoDB 分布式操作——分片操作 描述: 像其它分布式数据库一样,MongoDB同样支持分布式操作,且MongoDB将分布式已经集成到数据库中,其分布式体系如下图所示: 所谓的片,其实就是一个单 ...

  10. kinect for windows - SkeletonBasics-D2D详解之一

    之前的文章介绍了深度图的获取,但是深度图只是提供了一些数据,这些数据给上层应用使用还是偏底层一些,我们希望在这个基础上,获取一些信息,比如手挥动,人跑步,或者运动等等,那么这个文章开始我们来讲述kin ...