展开全部

主编推荐语

更适合95后的C语言编程入门书。

内容简介

本书循序渐进、由浅入深地讲解了C语言开发的技术。全书共25章。本书不仅介绍了C语言的基础和核心知识,还讲解了C语言中的重点和难点。此外,本书还通过4个综合实例,介绍了C语言在综合项目中的应用。全书内容以“技术解惑”和“范例演练”贯穿全书,读者全面掌握C语言。

本书不但适用C语言的初学者,也适合有C语言基础的读者学习,还可以作为大专院校相关专业的师生用书和培训学校的教材。

目录

  • 版权信息
  • 内容提要
  • 前言
  • 选择一本合适的书
  • 本书特色
  • 本书内容
  • 各章的内容分布
  • 本书读者对象
  • 资源与支持
  • 配套资源
  • 提交勘误
  • 与我们联系
  • 关于异步社区和异步图书
  • 第1章 C语言之定位
  • 1.1 计算机应用基础
  • 1.1.1 中央处理器
  • 1.1.2 位和字节
  • 1.1.3 二进制
  • 1.1.4 编码格式
  • 1.2 C语言的诞生
  • 1.3 第一印象的建立
  • 1.4 理解编译系统——学习的第一步
  • 1.5 技术解惑
  • 1.5.1 学习C语言还有用吗
  • 1.5.2 怎样学好C语言
  • 1.5.3 学好C语言的建议
  • 1.6 课后练习
  • 第2章 C语言开发工具详解
  • 2.1 用DOS开发C程序
  • 2.1.1 安装Turbo C 3.0
  • 2.1.2 使用Turbo C 3.0
  • 2.2 在Windows环境下使用Visual Studio 2017
  • 2.2.1 安装Visual Studio 2017
  • 2.2.2 使用Visual Studio 2017开发一个C程序
  • 2.3 使用轻量级开发工具DEV C++
  • 2.3.1 安装DEV C++
  • 2.3.2 使用DEV C++运行一个C程序
  • 2.4 使用Vsiual C++ 6.0开发C程序
  • 2.5 使用手机开发C程序
  • 2.6 技术解惑
  • 2.6.1 安装Visual Studio 2017时遇到的常见问题
  • 2.6.2 在Windows 7中安装Visual Studio时遇到的常见问题
  • 2.7 课后练习
  • 第3章 程序员基本素质的培养
  • 3.1 养成好的命名习惯
  • 3.2 C程序文件结构
  • 3.2.1 C程序的组成部分
  • 3.2.2 C程序的格式总结
  • 3.3 养成好的C语言编程风格
  • 3.3.1 随时使用缩进格式
  • 3.3.2 注意大括号的位置
  • 3.3.3 函数的规则
  • 3.3.4 注意注释
  • 3.4 如何成为一名优秀的程序员
  • 3.5 技术解惑
  • 3.6 课后练习
  • 第4章 C语言语法
  • 4.1 标识符和关键字
  • 4.2 最基本的数据类型
  • 4.3 常量和变量
  • 4.3.1 常量
  • 4.3.2 变量
  • 4.4 整型数据
  • 4.4.1 整型常量
  • 4.4.2 整型变量
  • 4.5 实型数据
  • 4.5.1 实型常量
  • 4.5.2 实型变量
  • 4.5.3 实型常量的类型
  • 4.6 字符型数据
  • 4.6.1 字符常量
  • 4.6.2 字符串常量
  • 4.6.3 字符变量
  • 4.7 初始化变量
  • 4.8 整型、实型和字符型数据间的运算总结
  • 4.8.1 自动转换
  • 4.8.2 强制转换
  • 4.9 技术解惑
  • 4.9.1 在C语言中无符号整型变量和有符号整型变量的定义
  • 4.9.2 在C语言中字符变量的含义
  • 4.9.3 如何理解字符型数据的取值范围
  • 4.9.4 怎样将带小数点的字符型数据转换成浮点型
  • 4.10 课后练习
  • 第5章 运算符和表达式
  • 5.1 运算符和表达式的概述
  • 5.1.1 运算符的种类
  • 5.1.2 运算符的优先级
  • 5.2 算术运算符和算术表达式
  • 5.2.1 单目运算符
  • 5.2.2 双目运算符
  • 5.3 赋值运算符和赋值表达式
  • 5.3.1 基本赋值运算符
  • 5.3.2 复合赋值运算符
  • 5.3.3 赋值表达式
  • 5.4 关系运算符和关系表达式
  • 5.4.1 关系运算符
  • 5.4.2 关系表达式
  • 5.5 逻辑运算符和逻辑表达式
  • 5.5.1 逻辑运算符
  • 5.5.2 逻辑表达式
  • 5.6 逗号运算符和逗号表达式
  • 5.6.1 逗号运算符
  • 5.6.2 逗号表达式
  • 5.7 求字节数的运算符
  • 5.8 技术解惑
  • 5.8.1 C语言运算符优先级的详情
  • 5.8.2 少数运算符在规定表达式中的求值顺序
  • 5.8.3 在C语言中是否可以进行混合运算
  • 5.8.4 在一个逻辑条件语句中常数项永远在左侧
  • 5.8.5 赋值处理的自动类型转换
  • 5.9 课后练习
  • 第6章 输入和输出
  • 6.1 C语句的初步知识
  • 6.1.1 C语句简介
  • 6.1.2 赋值语句
  • 6.2 打通任督二脉——数据输入和输出
  • 6.2.1 putchar函数
  • 6.2.2 getchar函数
  • 6.2.3 printf函数
  • 6.2.4 scanf函数
  • 6.2.5 puts函数
  • 6.2.6 C11标准函数gets_s
  • 6.3 技术解惑
  • 6.3.1 gets_s函数和scanf函数的区别
  • 6.3.2 克服gets_s函数的缺陷
  • 6.3.3 C语言的输入和输出问题
  • 6.4 课后练习
  • 第7章 流程控制
  • 7.1 最常见的顺序结构
  • 7.2 选择结构
  • 7.2.1 单分支结构语句
  • 7.2.2 双分支结构语句
  • 7.2.3 多分支结构语句
  • 7.2.4 条件运算符和条件表达式
  • 7.3 循环结构
  • 7.3.1 for语句
  • 7.3.2 while语句
  • 7.3.3 do…while语句
  • 7.3.4 正确对待goto语句
  • 7.3.5 break/continue跳跃
  • 7.3.6 死循环/退出程序
  • 7.4 技术解惑
  • 7.4.1 循环中的低效问题
  • 7.4.2 分析C语言循环语句的效率
  • 7.4.3 使用for循环语句的注意事项
  • 7.5 课后练习
  • 第8章 数组和字符串——数据的存在形式
  • 8.1 一维数组
  • 8.1.1 定义一维数组
  • 8.1.2 引用一维数组的元素
  • 8.1.3 初始化一维数组
  • 8.2 多维数组
  • 8.2.1 二维数组的用法
  • 8.2.2 多维数组的用法
  • 8.3 字符数组与字符串
  • 8.3.1 字符数组
  • 8.3.2 字符串与字符数组
  • 8.3.3 字符数组的输入和输出
  • 8.4 字符串处理函数
  • 8.4.1 测试字符串长度的函数
  • 8.4.2 字符串大小写转换函数
  • 8.4.3 字符串复制函数
  • 8.4.4 字符串比较函数
  • 8.4.5 字符串连接函数
  • 8.4.6 其他的字符串函数
  • 8.4.7 将字符串转换成数值的函数
  • 8.5 字符处理函数
  • 8.5.1 字符检测函数
  • 8.5.2 字符大小写转换函数
  • 8.6 技术解惑
  • 8.6.1 数组的下标总是从0开始吗
  • 8.6.2 C语言对数组的处理非常有效吗
  • 8.6.3 初始化一维数组的注意事项
  • 8.6.4 冒泡排序
  • 8.7 课后练习
  • 第9章 函数
  • 9.1 C函数的基础知识
  • 9.1.1 函数的分类
  • 9.1.2 函数的定义
  • 9.2 函数声明和函数原型
  • 9.3 函数的参数
  • 9.3.1 形参和实参
  • 9.3.2 以数组名作为函数的参数
  • 9.3.3 以数组作为函数的参数
  • 9.4 函数的返回值
  • 9.5 函数的调用
  • 9.5.1 函数调用的格式
  • 9.5.2 函数的调用方式
  • 9.5.3 被调函数的声明方式
  • 9.5.4 对调用函数的方式进行深入分析
  • 9.6 函数的嵌套调用和递归调用
  • 9.6.1 函数的嵌套调用
  • 9.6.2 函数的递归调用
  • 9.7 变量的作用域和生存期
  • 9.7.1 变量作用域
  • 9.7.2 静态存储变量和动态存储变量
  • 9.8 C的内部函数和外部函数
  • 9.8.1 内部函数
  • 9.8.2 外部函数
  • 9.9 库函数
  • 9.10 技术解惑
  • 9.10.1 通过Turbo C深入分析项目文件
  • 9.10.2 要尽量避免不必要的函数调用
  • 9.10.3 请确保函数的声明和定义是静态的
  • 9.10.4 避免过长的main()函数
  • 9.10.5 函数的地址也是数据
  • 9.10.6 说明函数的时机
  • 9.10.7 一个函数可以有多少个参数
  • 9.10.8 如果一个函数没有返回值,是否需要加入return语句
  • 9.10.9 在程序退出main函数之后还有可能执行一部分代码
  • 9.10.10 exit()函数和return语句的差异
  • 9.11 课后练习
  • 第10章 指针
  • 10.1 基本概念
  • 10.2 变量的指针和指向变量的指针变量
  • 10.2.1 声明指针变量
  • 10.2.2 指针变量的初始化
  • 10.2.3 指针变量的引用
  • 10.2.4 关于指针运算符的说明
  • 10.2.5 指针变量的运算
  • 10.2.6 以指针变量作为函数参数
  • 10.2.7 void类型的指针
  • 10.3 指针和数组
  • 10.3.1 数组元素的指针
  • 10.3.2 指向一维数组元素的指针变量
  • 10.3.3 通过指针引用数组元素
  • 10.3.4 以数组名作为函数参数
  • 10.4 指针和多维数组
  • 10.4.1 多维数组的地址
  • 10.4.2 指向多维数组的指针变量
  • 10.5 指针和字符串
  • 10.5.1 指针访问字符串
  • 10.5.2 以字符串指针作为函数参数
  • 10.5.3 字符串指针变量与字符数组的区别
  • 10.6 指针数组和多级指针
  • 10.6.1 指针数组
  • 10.6.2 多级指针的定义和应用
  • 10.6.3 指向指针的指针
  • 10.6.4 main函数的参数
  • 10.7 指针函数和函数指针
  • 10.7.1 指针函数
  • 10.7.2 函数指针
  • 10.8 技术解惑
  • 10.8.1 初始化指针时的注意事项
  • 10.8.2 为指针赋值时的注意事项
  • 10.8.3 当指针用于数组时的注意事项
  • 10.8.4 在结构中使用指针时的注意事项
  • 10.8.5 避免不必要的内存引用
  • 10.8.6 避免悬空指针和野指针
  • 10.8.7 数组下标与指针的效率解析
  • 10.8.8 使用指针时的常见错误
  • 10.9 课后练习
  • 第11章 数据的熔炉——结构体、共用体和枚举
  • 11.1 结构体
  • 11.1.1 定义结构体类型
  • 11.1.2 定义结构体类型变量
  • 11.1.3 引用结构体变量
  • 11.1.4 初始化结构体变量
  • 11.2 结构体数组
  • 11.2.1 定义结构体数组
  • 11.2.2 初始化结构体数组
  • 11.2.3 引用结构体数组
  • 11.3 结构体指针
  • 11.3.1 定义结构体指针变量
  • 11.3.2 初始化结构体指针变量
  • 11.3.3 引用结构体指针变量
  • 11.3.4 指向结构变量的指针
  • 11.3.5 指向结构体数组的指针
  • 11.4 在函数中使用结构体
  • 11.4.1 结构体变量和结构体指针可以作为函数参数
  • 11.4.2 函数可以返回结构体类型的值
  • 11.5 共用体(联合)
  • 11.5.1 定义共用体和共用体变量
  • 11.5.2 引用和初始化共用体变量
  • 11.6 枚举
  • 11.6.1 定义枚举类型
  • 11.6.2 定义枚举变量
  • 11.6.3 引用枚举变量
  • 11.7 typedef定义类型的作用
  • 11.7.1 类型定义符typedef的基础
  • 11.7.2 使用typedef
  • 11.8 技术解惑
  • 11.8.1 可以省略结构名吗
  • 11.8.2 是否可以定义一种通用数据类型以存储任意类型的数据
  • 11.8.3 结构和共用体的区别
  • 11.8.4 定义C结构体的问题
  • 11.9 课后练习
  • 第12章 链表
  • 12.1 动态内存分配
  • 12.1.1 动态内存分配的作用
  • 12.1.2 实现动态内存分配及管理的方法
  • 12.2 链表详解
  • 12.2.1 链表简介
  • 12.2.2 单向链表
  • 12.2.3 创建一个链表
  • 12.2.4 删除整个链表
  • 12.2.5 在链表中插入节点
  • 12.2.6 在链表中删除节点
  • 12.2.7 双向链表
  • 12.2.8 循环链表
  • 12.3 技术解惑
  • 12.3.1 链表的总结
  • 12.3.2 面试题——判断单链表是否有环
  • 12.3.3 面试题——实现单链表逆置
  • 12.4 课后练习
  • 第13章 位运算
  • 13.1 位运算符和位运算
  • 13.1.1 按位与运算
  • 13.1.2 按位或运算
  • 13.1.3 按位异或运算
  • 13.1.4 取反运算
  • 13.1.5 左移运算
  • 13.1.6 右移运算
  • 13.1.7 位运算的应用实例
  • 13.2 位域
  • 13.2.1 位域的定义和位域变量的说明
  • 13.2.2 位域的使用
  • 13.3 技术解惑
  • 13.3.1 二进制补码的运算公式
  • 13.3.2 面试题——从某个数中取出指定的某些位
  • 13.3.3 位域的内存对齐原则
  • 13.4 课后练习
  • 第14章 预编译处理
  • 14.1 预编译的基础
  • 14.2 宏定义
  • 14.2.1 不带参数的宏定义
  • 14.2.2 带参数的宏定义
  • 14.2.3 字符串化运算符
  • 14.2.4 并接运算符
  • 14.3 文件包含
  • 14.4 条件编译
  • 14.4.1 #ifdef… #else…#endif命令
  • 14.4.2 #if defined… #else…#endif
  • 14.4.3 #ifndef… #else…#endif
  • 14.4.4 #if !defined… #else…#endif
  • 14.4.5 #ifdef…#elif… #elif…#else… #endif
  • 14.5 技术解惑
  • 14.5.1 还有其他预编译指令吗
  • 14.5.2 带参的宏定义和函数不同
  • 14.5.3 C语言中预处理指令的总结
  • 14.5.4 预编译指令的本质
  • 14.5.5 sizeof(int)在预编译阶段是不会求值的
  • 14.5.6 多行预处理指令的写法
  • 14.6 课后练习
  • 第15章 文件操作
  • 15.1 文件
  • 15.1.1 文本文件
  • 15.1.2 文件分类
  • 15.2 文件指针
  • 15.3 文件的打开与关闭
  • 15.3.1 打开文件
  • 15.3.2 关闭文件
  • 15.4 文件读写
  • 15.4.1 字符读写函数
  • 15.4.2 字符串读写函数
  • 15.4.3 格式化读写函数
  • 15.4.4 数据块读写函数
  • 15.4.5 其他读写函数
  • 15.5 文件的随机读写
  • 15.5.1 fseek函数
  • 15.5.2 rewind函数
  • 15.5.3 ftell函数
  • 15.6 文件管理函数
  • 15.6.1 删除文件
  • 15.6.2 重命名文件
  • 15.6.3 复制文件
  • 15.7 文件状态检测函数
  • 15.7.1 feof函数
  • 15.7.2 ferror函数
  • 15.7.3 clearerr函数
  • 15.8 Win32 API中的文件操作函数
  • 15.8.1 创建和打开文件
  • 15.8.2 读取、写入和删除文件
  • 15.9 技术解惑
  • 15.9.1 文件指针是文件内部的位置指针吗
  • 15.9.2 fseek函数的换行问题
  • 15.9.3 怎样解决gets函数的溢出问题
  • 15.9.4 feof函数会多读一个数据吗
  • 15.9.5 流和文件的关系
  • 15.10 课后练习
  • 第16章 错误和程序调试
  • 16.1 常见错误分析
  • 16.1.1 语法错误
  • 16.1.2 逻辑错误(语义错误)
  • 16.1.3 内存错误
  • 16.2 错误的检出与分离
  • 16.3 调试时的注意事项
  • 16.3.1 上机前要先熟悉程序的运行环境
  • 16.3.2 在编程时要为调试做好准备
  • 16.4 技术解惑
  • 16.4.1 编译通过并不代表运行正确
  • 16.4.2 两段代码的编译差别
  • 16.4.3 调试程序的方法与技巧
  • 16.5 课后练习
  • 第17章 内存管理
  • 17.1 C语言中的内存模型
  • 17.2 栈和堆
  • 17.2.1 栈操作
  • 17.2.2 堆操作
  • 17.3 动态管理
  • 17.3.1 使用函数malloc动态分配内存空间
  • 17.3.2 使用函数calloc分配内存空间并初始化
  • 17.3.3 使用函数realloc重新分配内存
  • 17.3.4 使用函数free释放内存空间
  • 17.4 课后练习
  • 第18章 C语言高级编程技术
  • 18.1 C语言的高级编程技术
  • 18.2 分析文本的屏幕输出和键盘输入
  • 18.2.1 实现文本的屏幕输出
  • 18.2.2 实现键盘输入
  • 18.2.3 应用实例
  • 18.3 分析图形显示方式和鼠标输入
  • 18.3.1 初始化图形模式
  • 18.3.2 清屏和恢复显示函数
  • 18.3.3 建立独立图形程序
  • 18.3.4 基本绘图函数
  • 18.3.5 线性函数
  • 18.3.6 颜色控制函数
  • 18.3.7 填色函数和画图函数
  • 18.3.8 图形窗口函数
  • 18.3.9 分析图形方式下的文本输出函数
  • 18.4 菜单设计
  • 18.5 课后练习
  • 第19章 算法——抓住程序的灵魂
  • 19.1 我们对算法的理解
  • 19.1.1 算法是程序的灵魂
  • 19.1.2 何谓算法
  • 19.1.3 算法的特性
  • 19.2 算法表示法——流程图
  • 19.3 枚举算法
  • 19.3.1 枚举算法的基础
  • 19.3.2 实战演练——百钱买百鸡
  • 19.3.3 实战演练——填写运算符
  • 19.4 递推算法
  • 19.4.1 递推算法的基础
  • 19.4.2 实战演练——斐波那契数列
  • 19.4.3 实战演练——银行存款
  • 19.5 递归算法
  • 19.5.1 递归算法的基础
  • 19.5.2 实战演练——汉诺塔
  • 19.5.3 实战演练——阶乘
  • 19.6 分治算法
  • 19.6.1 分治算法的基础
  • 19.6.2 实战演练——大数相乘
  • 19.6.3 实战演练——欧洲冠军杯比赛日程安排
  • 19.7 贪心算法
  • 19.7.1 贪心算法的基础
  • 19.7.2 实战演练——装箱
  • 19.7.3 实战演练——找零方案
  • 19.8 试探法算法
  • 19.8.1 试探法算法的基础
  • 19.8.2 实战演练——八皇后
  • 19.8.3 实战演练——体彩29选7的组合
  • 19.9 迭代算法
  • 19.9.1 迭代算法的基础
  • 19.9.2 实战演练——求平方根
  • 19.10 模拟算法
  • 19.10.1 模拟算法的思路
  • 19.10.2 实战演练——猜数字游戏
  • 19.10.3 实战演练——掷骰子游戏
  • 19.11 技术解惑
  • 19.11.1 衡量算法的标准
  • 19.11.2 选择使用枚举法的时机
  • 19.11.3 递推和递归的差异
  • 19.11.4 分治法解决问题的类型
  • 19.11.5 分治算法的机理
  • 19.11.6 贪婪算法并不是解决问题最优方案的原因
  • 19.11.7 回溯算法是否会影响算法效率
  • 19.11.8 递归算法与迭代算法的区别
  • 19.12 课后练习
  • 第20章 数据结构
  • 20.1 使用线性表
  • 20.1.1 线性表的特性
  • 20.1.2 顺序表操作
  • 20.1.3 实战演练——使用顺序表操作函数
  • 20.2 队列
  • 20.2.1 队列的定义
  • 20.2.2 实战演练——实现一个排号程序
  • 20.3 栈
  • 20.3.1 栈的定义
  • 20.3.2 实战演练——实现栈操作
  • 20.4 技术解惑
  • 20.4.1 线性表插入操作的时间复杂度
  • 20.4.2 线性表删除操作的时间复杂度
  • 20.4.3 线性表按值查找操作的时间复杂度
  • 20.4.4 线性表链接存储操作的11种算法
  • 20.4.5 堆和栈的区别
  • 20.5 课后练习
  • 第21章 网络编程技术
  • 21.1 OSI 7层网络模型
  • 21.2 TCP/IP
  • 21.2.1 IP
  • 21.2.2 TCP
  • 21.2.3 UDP
  • 21.2.4 ICMP
  • 21.3 使用C语言开发网络项目
  • 21.3.1 网络编程方式
  • 21.3.2 网络通信的基本流程
  • 21.3.3 搭建开发环境
  • 21.3.4 两个常用的数据结构
  • 21.3.5 Windows套接字的基础
  • 21.4 常用的Winsock函数
  • 21.4.1 WSAStartup函数
  • 21.4.2 socket函数
  • 21.4.3 inet_addr函数
  • 21.4.4 gethostbyname函数
  • 21.4.5 bind函数
  • 21.4.6 connect函数
  • 21.4.7 select函数
  • 21.4.8 recv函数
  • 21.4.9 sendto函数
  • 21.5 MAC地址
  • 21.6 NetBIOS编程
  • 21.6.1 处理过程
  • 21.6.2 NetBIOS命令
  • 21.6.3 NetBIOS名字解析
  • 21.6.4 NetBEUI
  • 21.6.5 NetBIOS的范围
  • 21.6.6 NetBIOS控制块
  • 21.7 实战演练——获取当前机器的MAC地址
  • 21.7.1 选择开发工具
  • 21.7.2 设计MFC窗体
  • 21.7.3 具体编码
  • 第22章 初入江湖——设计游戏项目
  • 22.1 游戏功能描述
  • 22.2 游戏总体设计
  • 22.2.1 功能模块设计
  • 22.2.2 数据结构设计
  • 22.2.3 构成函数介绍
  • 22.3 游戏的具体实现
  • 22.3.1 预处理
  • 22.3.2 主函数
  • 22.3.3 初始化界面处理
  • 22.3.4 时钟中断处理
  • 22.3.5 成绩、速度和帮助处理
  • 22.3.6 满行处理
  • 22.3.7 方块显示和消除处理
  • 22.3.8 方块判断处理
  • 第23章 风云再起——设计网络项目
  • 23.1 系统功能描述
  • 23.2 系统总体设计
  • 23.2.1 功能模块设计
  • 23.2.2 数据结构设计
  • 23.2.3 构成函数介绍
  • 23.3 系统的具体实现
  • 23.3.1 预处理
  • 23.3.2 初始化处理
  • 23.3.3 控制模块
  • 23.3.4 数据报解读处理
  • 23.3.5 Ping测试处理
  • 23.3.6 主函数
  • 第24章 炉火纯青——学生成绩管理系统
  • 24.1 系统总体描述
  • 24.1.1 项目开发的目标
  • 24.1.2 项目的意义
  • 24.1.3 系统功能描述
  • 24.2 系统总体设计
  • 24.2.1 功能模块设计
  • 24.2.2 数据结构设计
  • 24.2.3 构成函数介绍
  • 24.3 系统的具体实现
  • 24.3.1 预处理
  • 24.3.2 主函数
  • 24.3.3 系统主菜单函数
  • 24.3.4 表格显示信息
  • 24.3.5 信息查找定位
  • 24.3.6 格式化输入数据
  • 24.3.7 增加学生记录
  • 24.3.8 查询学生记录
  • 24.3.9 删除学生记录
  • 24.3.10 修改学生记录
  • 24.3.11 插入学生记录
  • 24.3.12 统计学生记录
  • 24.3.13 排序处理
  • 24.3.14 存储学生信息
  • 第25章 笑傲江湖——使用C51实现跑马灯程序
  • 25.1 单片机C语言基础
  • 25.1.1 单片机C语言的优越性
  • 25.1.2 C51的数据类型
  • 25.1.3 C51数据的存储结构
  • 25.1.4 C51运算符和表达式
  • 25.1.5 C51的中断函数
  • 25.2 跑马灯设计实例
  • 25.2.1 基本跑马灯的实现
  • 25.2.2 矩形波发生器
  • 25.2.3 用定时器/计数器产生矩形波
  • 25.3 一个完整的跑马灯程序
  • 25.3.1 电路设计
  • 25.3.2 程序设计
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

人民邮电出版社

人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。