![]()
内容推荐 本书是为程序设计初学者量身定制的入门教程,内容安排由简到繁、由易到难,采取“基础优先”“问题驱动”“实践导向”的方式对C语言的语法特性、应用场景和典型算法进行阐述。本书内容覆盖了程序设计必备的计算机基础知识、程序设计的基本控制结构、函数、数组、字符串、指针和文件处理等方面,旨在帮助读者全面掌握程序设计的基础知识、基本理论和基本技能,帮助读者灵活运用这些知识和技能解决实际问题。 本书可作为普通高等学校、高职高专院校计算机、信息技术及相关专业程序设计课程的教学用书,也可作为从事程序设计与开发工作的各类人员或计算机等级考试/水平考试备考者的参考书。 目录 第1章 C语言概论 1.1 计算机基础知识 1.1.1 CPU 1.1.2 内部存储器 1.1.3 外部存储器 1.1.4 输入/输出设备 1.1.5 其他设备 1.1.6 总线 1.2 数据的抽象与三级存储体系 1.2.1 数据的抽象 1.2.2 三级存储体系 1.3 程序设计语言 1.3.1 程序和程序设计语言 1.3.2 编译及编译过程 1.4 C语言的发展历史 1.5 第一个C语言程序的实现 1.5.1 编写C语言程序的基本流程 1.5.2 第一个C语言程序 程序设计练习 第2章 程序设计基础 2.1 编写一个简单的C语言程序 2.2 二进制 2.3 整数 2.3.1 无符号整数 2.3.2 有符号整数 2.3.3 有符号整数与无符号整数间的转换 2.3.4 有符号整数的扩展 2.4 浮点数 2.4.1 二进制小数 2.4.2 IEEE浮点数 2.4.3 C语言中的浮点数类型 2.5 标识符、常量和变量 2.5.1 标识符 2.5.2 常量 2.5.3 变量 2.6 赋值表达式和赋值语句 2.7 输入/输出 2.7.1 printf( )格式化输出函数 2.7.2 scanf( )格式化输入函数 2.7.3 getchar( )函数 2.7.4 putchar( )函数 2.8 确定变量占用空间大小和表示范围 2.8.1 sizeof( )运算符 2.8.2 数据表示范围相关常量 2.9 算术运算符与数据类型转换 2.9.1 算术运算符和算术表达式 2.9.2 算术运算符的优先级和结合性 2.9.3 数据类型的转换 程序设计练习 第3章 分支控制结构 3.1 顺序控制结构 3.1.1 表达式语句 3.1.2 空语句 3.1.3 复合语句 3.2 关系运算符和关系表达式 3.2.1 关系运算符及其优先级和结合性 3.2.2 关系表达式 3.2.3 使用关系运算符的注意事项 3.3 逻辑运算符和逻辑表达式 3.3.1 逻辑运算符、逻辑表达式及其说明 3.3.2 使用逻辑表达式的注意事项 3.4 位运算 3.4.1 位运算符 3.4.2 运算符的优先级 3.5 选择结构 3.5.1 单分支if语句 3.5.2 双分支if语句和条件运算符“?:” 3.5.3 if语句的嵌套 3.5.4 多分支if语句 3.5.5 switch语句 程序设计练习 第4章 循环控制结构 4.1 while循环 4.2 do···while循环 4.3 for循环 4.4 跳转语句 4.4.1 语句标号 4.4.2 goto语句 4.4.3 break语句 4.4.4 continue语句 4.5 循环的嵌套 4.5.1 嵌套循环程序的设计 4.5.2 嵌套循环程序的分析 程序设计练习 第5章 函数 5.1 标准函数 5.1.1 include命令行 5.1.2 函数的声明 5.1.3 标准函数的使用 5.2 函数的定义、声明和调用 5.2.1 函数的定义 5.2.2 函数的声明 5.2.3 函数的调用 5.3 函数调用的进一步理解 5.3.1 形参命名与实参命名的关系 5.3.2 函数调用时实参与形参的处理规则 5.3.3 栈帧结构 5.4 函数的嵌套调用及递归函数 5.4.1 函数的嵌套调用 5.4.2 递归函数 5.4.3 递归调用的执行过程 5.5 变量的作用域和存储类型 5.5.1 内存布局 5.5.2 变量的作用域 5.5.3 变量的存储类型 5.5.4 变量的作用域和存储类型总结 程序设计练习 第6章 数组 6.1 一维数组 6.1.1 一维数组的定义 6.1.2 一维数组元素的引用 6.1.3 一维数组的初始化 6.1.4 一维数组使用举例 6.2 二维数组 6.2.1 二维数组的定义 6.2.2 二维数组元素的引用 6.2.3 二维数组的初始化 6.2.4 二维数组使用举例 6.3 字符数组和字符串 6.3.1 字符数组的定义 6.3.2 字符数组的初始化 6.3.3 字符数组使用举例 6.4 常用字符串处理函数 6.5 数组作函数参数 程序设计练习 第7章 指针 7.1 指针变量的基础知识 7.1.1 指针变量及其本质 7.1.2 指针变量作函数的参数 7.2 一维数组和指针 7.2.1 一维数组与指针间的对应关系 7.2.2 指针变量的相关运算 7.2.3 指针与字符串 7.2.4 指针作函数参数 7.2.5 指针作函数返回值 7.3 二维数组和指针 7.3.1 二维数组与指针间的对应关系 7.3.2 指向一维数组的指针 7.3.3 指针数组 7.3.4 二级指针 7.3.5 指向一维数组的指针和二级指针作函数参数 7.4 函数指针 7.4.1 通过指向函数的指针调用函数 7.4.2 回调函数 序言 作为一种从诞生之初就备受欢迎的程序设计语言, C语言具有自由度高、灵活性强、结构简洁清晰、功能 丰富、代码质量高、可移植性好等诸多优点,C++、C# 、Java、Python等主流编程语言都与C语言密切相关。 C语言既具有高级语言的优点,又兼具某些低级语言的 特性,代码执行效率高,适合编写系统软件和图形图像 处理程序、网络程序、通信程序等应用软件。 本书强调学习过程的认知规律性、内容的整体性和 一致性,在知识脉络和章节内容安排上,依据认知规律 设计知识成长线,运用图表等视觉元素对基本原理和操 作过程进行分解,按照由浅入深、循序渐进和深度剖析 的思路构建本书的体系结构。本书将关系运算符和逻辑 运算符作为分支控制结构的前置条件,将字符串及相关 操作函数的使用放到数组一章(第6章)进行阐述。本 书教学内容整体上分为10章,各章主要内容如下。 第1章主要讲述程序设计所需具备的基础知识,包 括计算机硬件基础知识、数据的抽象与三级存储体系、 程序设计语言、C语言的发展历史和C语言程序的结构特 征。 第2章主要讲述程序设计基础知识,包括数制、整 数和浮点数、常量和变量、赋值表达式、输入/输出及 算术运算符。 第3章主要讲述分支控制结构,包括复合语句,关 系运算符和关系表达式,逻辑运算符和逻辑表达式,位 运算,单分支、双分支及多分支选择结构。 第4章主要讲述循环控制结构,包括while、do… while和for循环控制结构,break和continue等跳转语 句及嵌套循环程序的设计和分析。 第5章主要讲述函数,包括函数的定义、声明和调 用,函数的嵌套调用和递归函数,变量的作用域和存储 类型。 第6章主要讲述数组,包括一维数组、二维数组、 字符数组和字符串处理函数、数组作函数参数。 第7章主要讲述指针,包括指针变量的基础知识、 一维数组和指针、二维数组和指针及函数指针。 第8章主要讲述编译预处理,包括宏定义、文件包 含和条件编译。 第9章主要讲述结构体和共用体,包括结构体变量 的定义和使用、结构体数组、指向结构体的指针、共用 体和枚举、使用typedef定义类型及应用举例。 第10章主要讲述文件处理,包括文件的基础知识、 文件的打开和关闭、文件的读写及文件处理函数。 附录A列出了ASCII表,附录B列出了C语言运算符 的优先级及结合性。 本书中所有示例及程序设计练习的源代码均在 Visual C++ 2010环境下调试通过。与本书配套的教学 资源(教学课件、示例源代码和程序设计练习源代码) 可以从http://www.abook.cn 下载。另外,为了节约 篇幅,在不影响阅读的前提下,本书对部分示例代码进 行了缩排。 本书由吉林师范大学教材出版基金资助。具体分工 如下:第1~2章由李昊编写,第3~9章由英昌盛编写, 第10章及附录由谭振江编写。全书由英昌盛策划、统稿 ,由谭振江审校。 由于作者水平有限,书中难免存在不足之处,真诚 希望能得到广大读者朋友的批评指正。 |