![]()
内容推荐 《C语言教程(教育部大学计算机课程改革项目规划教材)》作者陈良银、游洪跃、李旭伟从事C语言教学已有十余年,但从未觉得C语言教学是一件轻松的事,在总结多年教学经验基础上萌生了写一本适用于初学者的最易教、最易学的C语言教材的想法。 为了更适合教学,作者首先在结构上做了新的调整,让每一章的结构变得简单,且每章仅包含三部分内容,即:1.程序示例,2.相关语法,3.研究部分。其次,本书在内容上也做了大量简化,重点关注那20%左右的编程常用语言要素。本书的内容主要包括:基础知识、表达式求值、C程序控制结构、函数、数组和指针、结构类型、预处理命令和文件。最后本书还以附录的形式增加了高级主题部分。 本书可作为初学者的自学教材,或大一新生学习C语言编程的核心教材或参考资料。也可供自学人员参考。 作者简介 陈良银,四川大学教授、博士生导师。四川大学超前部署优先发展学科平台“工业互联网工程技术”首席科学家、四川大学工业互联网研究院副院长、计算机学院物联网系主任、民航局一民航机场信息与控制工程技术研究中心(四川大学)负责人、四川省民航机场运行与控制工程技术研究中心(共建方)负责人、成都市民航机场航班运行与控制新技术产学研联合实验室(共建方)负责人。主要从事传感网、物联网、嵌入式系统与个人大数据、工业互联网、计算机应用等方面的研究。在TMC(CCF A类顶级国际杂志)、Secon、SerlSys(传感网顶级会议)等国内外期刊和学术会议上发表论文、Letter、Poster等60余篇,其中SCI/EI检索近50篇。申请并获准国家发明专利近20项、出版教材4部、主持完成包括国家级/省部级项目等10余项。 目录 第1章 基础知识 1.1 C程序的“特制砖头”结构 1.1.1 积木拼图游戏 1.1.2 “特制砖头”在C程序中的作用 1.1.3 C程序的运行过程 1.2 计算机的基本硬件组成 1.2.1 计算机的五大部件 1.2.2 存储器抽象结构 1.2.3 内存分区 1.3 计算机基本工作原理 1.4 计算机语言 1.5 ASCII码 1.6 算法和数据结构 1.7 编程风格 1.8 习题 第2章 表达式求值 2.1 程序示例 2.1.1 输出Hello World 2.1.2 简单表达式求值 2.1.3 求复杂表达式的值 2.2 相关语法 2.2.1 数据类型 2.2.2 常数 2.2.3 变量和标识符 2.2.4 运算符和表达式 2.2.5 类型转换规则 2.3 研究部分 2.3.1 程序陷阱 2.3.2 研究实例:用贪心算法高效求解纸币支付问题 2.4 习题 第3章 C程序控制结构 3.1 程序示例 3.1.1 if语句的使用 3.1.2 switch语句的使用 3.1.3 for循环语句的使用 3.2 相关语法 3.2.1 语句和语句块 3.2.2 三种基本结构概述 3.2.3 顺序结构 3.2.4 选择结构 3.2.5 循环结构 3.2.6 跳转语句 3.3 研究部分 3.3.1 程序陷阱 3.3.2 研究实例:暴力破解数字谜语 3.4 习题 第4章 函数 4.1 程序示例 4.1.1 函数调用示例 4.1.2 简单递归函数示例 4.1.3 复杂递归函数示例 4.1.4 外部变量示例 4.2 相关语法 4.2.1 函数 4.2.2 外部变量和内部变量 4.2.3 自顶向下程序设计 4.3 研究部分 4.3.1 程序陷阱 4.3.2 研究实例:高效计算2n 4.4 习题 第5章 数组和指针 5.1 程序示例 5.1.1 一维数组示例 5.1.2 指针数组示例 5.1.3 二维数组示例 5.1.4 数组作为函数参数示例 5.2 相关语法 5.2.1 数组 5.2.2 指针 5.2.3 数组和指针 5.2.4 字符数组和字符指针 5.3 研究部分 5.3.1 程序陷阱 5.3.2 研究实例:编程的艺术 ——求解兑换钱问题 5.4 习题 第6章 结构、联合、位段和枚举类型 6.1 程序示例 6.1.1 结构的使用 6.1.2 结构数组的使用 6.1.3 联合的使用 6.1.4 位段和类型别名声明的使用 6.1.5 枚举的使用 6.2 相关语法 6.2.1 结构 6.2.2 联合 6.2.3 枚举类型 6.2.4 类型别名声明:typedef 6.2.5 位段 6.3 研究部分 6.3.1 程序陷阱 6.3.2 研究实例:具有实用价值的最短路径问题 6.4 习题 第7章 预处理命令 7.1 程序示例 7.1.1 宏定义的使用 7.1.2 无参宏的使用 7.1.3 带参宏的使用 7.2 相关语法 7.2.1 文件包含 7.2.2 宏定义 7.2.3 条件编译 7.2.4 宏assert 7.3 研究部分 7.3.1 程序陷阱 7.3.2 研究实例:碰运气游戏 7.4 习题 第8章 文件 8.1 程序示例 8.1.1 文本文件的使用 8.1.2 二进制文件的使用 8.2 相关语法 8.2.1 文件指针 8.2.2 文件的打开与关闭 8.2.3 文件检测函数 8.2.4 文件操作函数 8.2.5 随机读写文件 8.3 研究部分 8.3.1 程序陷阱 8.3.2 研究实例:人事管理系统 8.4 习题 附录A 高级主题 A.1 变长参数列表 A.2 命令行参数 A.3 用exit()函数退出程序的执行 A.4 动态内存分配与释放 A.4.1 动态内存分配函数:malloc() A.4.2 动态内存释放函数:free() A.4.3 动态内存处理实例:线性链表 A.5 指针的深入讨论 A.5.1 指向函数的指针变量 A.5.2 返回指针的函数 A.6 格式化输出/输入讨论 A.6.1 格式化输出printf()函数 A.6.2 格式化输入scanf()函数 A.7 研究部分:程序陷阱 A.8 习题 参考文献
|