C程序设计与系统开发

C程序设计与系统开发
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
2020-06
版次: 1
ISBN: 9787113261634
定价: 52.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 280页
1人买过
  • 本书是普通高等教育“十三五”规划教材,在编写过程中,采用“案例教学法”,将烦琐而抽象的语法规则融入具体的例子当中,便于读者理解和掌握相关知识点。 

    本书注重培养学生综合运用相关知识解决实际问题的能力,内容包括:算法及其描述方法、程序设计基础、数组及字符串、复杂数据类型、指针、函数、文件、系统开发与链表、位运算和预处理。本书注重应用性和实践性,通过一些典型案例的解析,可进一步加强学生对C 语言的理解,培养学生综合运用相关知识解决实际问题的能力。 

    本书适合作为普通高等院校计算机相关专业的教材,也可作为社会培训班及C 程序爱好者的参考用书。 祁建宏,男,1972年6月出生,甘肃省临洮县人,1995年6月毕业于西北师范大学计算机应用专业,1995年7月始,先后在兰州师专计算中心、计算机系及兰州城市学院信息工程学院、电子与信息工程学院工作至今,主要从事与计算机相关的教学及研究工作,主要研究方向为算法设计与优化,以第一作者身份先后发表省级以上论文十多篇,主编教材两部,参编五部,主持及参与校级直至国J级各类项目十多项 第1 章 算法及其描述方法 . 1 

    1.1  为什么要编写程序 1 

    1.2  算法的概念及基本特征 . 2 

    1.3  结构化程序设计方法 3 

    1.4  算法的几种描述方法 5 

    1.4.1  自然语言 5 

    1.4.2  流程图 5 

    1.4.3  N-S 图 .6 

    1.4.4  计算机语言 .7 

    1.4.5  伪代码 9 

    1.5  C 语言简介 10 

    1.6  C 语言程序上机调试过程 .11 

    1.6.1  C 语言程序的编制运行过程 11 

    1.6.2  VC 6.0 的启动 . 12 

    1.6.3  VC 6.0 的关闭 . 12 

    1.6.4  VC 6.0 中新程序的建立及调试运行 . 12 

    1.6.5  当前源程序及相关环境的关闭 . 15 

    1.6.6  已存在的程序文件的打开及运行 . 15 

    习题 .16 

    第2 章 程序设计基础. 18 

    2.1  信息处理流程及其在C 语言中的基本实现方法 .18 

    2.1.1  信息处理流程概述 . 18 

    2.1.2  数据的输入、存储、加工处理及输出流程示例 19 

    2.2  顺序结构程序设计22 

    2.3  格式化输出及输入函数 24 

    2.3.1  格式化输出函数printf() 24 

    2.3.2  格式化输入函数scanf() . 27 

    2.4  选择结构程序设计27 

    2.5  循环结构程序设计 36 

    2.6  三种控制结构的综合应用 .44 

    2.7 标识符及其命名规则.57 

    2.8  常量、变量及数据类型 58 

    2.8.1  变量 . 58 

    2.8.2  数据类型 59 

    2.8.3  常量 . 61 

    2.9  运算符及其优先级和结合性 61 

    目 录CONTENTS 

    2.9.1  运算符的优先级及结合性概述 . 61 

    2.9.2  常见运算符及其相关说明 . 63 

    2.9.3  有关结合性的解释 . 65 

    2.10  不同类型数据间的转换与运算 .66 

    2.10.1  隐式自动转换 66 

    2.10.2  显式强制转换 68 

    习题 .69 

    第3 章 数组及字符串. 74 

    3.1  一维数组 .74 

    3.1.1  一维数组的定义. 74 

    3.1.2  一维数组元素的引用 75 

    3.1.3  一维数组的初始化 . 76 

    3.2  二维及多维数组87 

    3.2.1  二维数组的定义 87 

    3.2.2  多维数组 92 

    3.3  字符串 92 

    3.3.1  字符串的本质 92 

    3.3.2  字符数组 93 

    3.3.3  常用字符串操作函数 93 

    3.3.4  字符串应用举例 96 

    习题 .98 

    第4 章 复杂数据类型. 100 

    4.1  C 语言中的复杂数据类型概述 .100 

    4.2 结构体 100 

    4.2.1  结构体类型的定义 . 101 

    4.2.2  结构体变量的定义 . 102 

    4.2.3  结构体变量的引用 . 104 

    4.2.4  结构体变量的赋值 . 104 

    4.3  共用体108 

    4.3.1  共用体类型的定义 . 109 

    4.3.2  共用体变量的定义 . 110 

    4.3.3  共用体变量的引用 . 111 

    4.3.4  共用体变量的赋值. 112 

    4.4  枚举类型 .115 

    4.4.1  枚举类型的定义 116 

    4.4.2  枚举型变量的定义. 116 

    4.4.3 枚举型变量的赋值 . 116 

    4.4.4 枚举类型有关说明 . 116 

    习题 .119 

    第5 章 指  针 121 

    5.1 C 语言中的指针概述 .121 

    5.1.1 指针与指针变量. 121 

    5.1.2 指针相关运算 125 

    5.2 指针与数组的关系 126 

    5.2.1 数组的指针与指向一维数组元素的指针变量 . 126 

    5.2.2 一维数组与指针变量的关系 126 

    5.2.3 指向指针的指针变量 128 

    5.2.4 指针数组――元素类型为指针的数组 . 128 

    5.2.5 指针数组与指向指针的指针变量的关系 129 

    5.2.6 二维数组与指针变量的关系 131 

    5.3 指针与动态内存分配.135 

    5.3.1 C 语言内存管理概述 136 

    5.3.2 内存空间的动态分配 137 

    5.3.3 动态释放内存 138 

    5.3.4 动态内存分配的几种不同情形. 138 

    5.3.5 常见内存错误及其对策. 142 

    5.4 指针与字符串.142 

    5.4.1 用C 语言处理字符串的两种不同形式 143 

    5.4.2 字符型指针变量与字符型数组. 144 

    习题 .145 

    第6 章 函  数 146 

    6.1 C 语言函数简介146 

    6.1.1 函数的概念、分类 . 146 

    6.1.2 标准函数的使用. 146 

    6.2 自定义函数 148 

    6.2.1 自定义函数概述. 148 

    6.2.2 自定义函数的一般定义形式 150 

    6.2.3 自定义函数的调用 . 150 

    6.2.4 模块化程序设计 153 

    6.3 函数中参数的传递方式 155 

    6.3.1 按值传送 156 

    6.3.2 按地址传送 . 156 

    6.3.3  两种不同参数传递方式的选择 . 157 

    6.4  变量的作用域、生存期及存储类型 158 

    6.4.1  变量的作用域 158 

    6.4.2  变量的生存期 158 

    6.4.3  局部变量 158 

    6.4.4  全局变量 160 

    6.4.5  文件变量 161 

    6.4.6  变量的存储类型 162 

    6.4.7  auto 存储类型的变量与作用范围 . 162 

    6.4.8  static 存储类型的变量与作用范围 . 162 

    6.4.9  register 存储类型的变量与作用范围 163 

    6.4.10  extern 存储类型的变量与作用范围 164 

    6.4.11  外部变量在多文件系统中的应用 166 

    6.4.12  变量作用域、生存期及存储类型小结 . 167 

    6.5 函数的嵌套与递归调用 168 

    6.5.1  函数的嵌套调用 . 168 

    6.5.2  函数的递归调用. 168 

    习题 .172 

    第7 章 文  件 173 

    7.1  文件概述 .173 

    7.1.1  文件的概念 . 173 

    7.1.2  文件的分类 . 173 

    7.2 文件操作 .175 

    7.2.1  文件指针 176 

    7.2.2  文件操作基本步骤示例 176 

    7.3  文件操作相关函数 178 

    7.3.1  文件的打开:fopen() 函数 . 178 

    7.3.2  文件的关闭:fclose() 函数 . 179 

    7.3.3  文件格式化输出函数:fprintf() . 180 

    7.3.4  文件格式化输入函数:fscanf(). 180 

    7.3.5  判断是否到文件尾函数:feof() . 180 

    7.3.6  文件数据块读/ 写函数:fread() 和fwrite() 180 

    7.3.7  文件内部指针的定位 181 

    7.3.8  清除文件缓冲区函数:fflush() 184 

    习题 .186 

    第8 章 系统开发与链表 . 187 

    8.1  软件工程简介 .187 

    8.1.1  软件工程概述 187 

    8.1.2  软件工程中的瀑布模型 . 188 

    8.2 “班级基本信息管理系统”开发示例 190 

    8.2.1  问题的定义 . 191 

    8.2.2  可行性研究 . 191 

    8.2.3  需求分析 191 

    8.2.4  系统设计(概要设计) . 192 

    8.2.5  详细设计 193 

    8.2.6  编码 . 196 

    8.2.7  测试 . 200 

    8.2.8  运行及维护 . 200 

    8.3  链表与系统开发201 

    8.3.1  问题的定义 . 201 

    8.3.2  可行性研究 . 201 

    8.3.3  需求分析 201 

    8.3.4  系统设计(概要设计) . 201 

    8.3.5  详细设计(算法设计) . 204 

    8.3.6  编码 . 208 

    8.3.7  测试 . 214 

    8.3.8  运行与维护 . 214 

    习题 .214 

    第9 章 位运算 . 215 

    9.1  C 语言中的位运算 .215 

    9.2 位运算实际应用 217 

    9.2.1  按位与、或、异或及取反 . 217 

    9.2.2  移位运算 218 

    9.2.3  典型应用案例 219 

    9.3  位域 222 

    9.3.1  位域类型定义 223 

    9.3.2  位域变量定义 224 

    9.3.3  位域的使用 . 224 

    9.3.4  位域的空间分配 225 

    习题 .226 

    第10 章 预处理 227 

    10.1  预处理简介 227 

    10.2  宏定义 .227 

    10.2.1  无参宏定义 . 228 

    10.2.2  带参宏定义 . 228 

    10.2.3  取消宏定义 . 230 

    10.3  文件包含.230 

    10.4  条件编译 .231 

    习题 .233 

    附录A 学习建议 . 234 

    附录B 常见标准函数 235 

    附录C  C 语言关键字 253 

    附录D  ASCII 码表 255 

    附录E  C 语言常见错误举例说明 259 

    参考文献 267
  • 内容简介:
    本书是普通高等教育“十三五”规划教材,在编写过程中,采用“案例教学法”,将烦琐而抽象的语法规则融入具体的例子当中,便于读者理解和掌握相关知识点。 

    本书注重培养学生综合运用相关知识解决实际问题的能力,内容包括:算法及其描述方法、程序设计基础、数组及字符串、复杂数据类型、指针、函数、文件、系统开发与链表、位运算和预处理。本书注重应用性和实践性,通过一些典型案例的解析,可进一步加强学生对C 语言的理解,培养学生综合运用相关知识解决实际问题的能力。 

    本书适合作为普通高等院校计算机相关专业的教材,也可作为社会培训班及C 程序爱好者的参考用书。
  • 作者简介:
    祁建宏,男,1972年6月出生,甘肃省临洮县人,1995年6月毕业于西北师范大学计算机应用专业,1995年7月始,先后在兰州师专计算中心、计算机系及兰州城市学院信息工程学院、电子与信息工程学院工作至今,主要从事与计算机相关的教学及研究工作,主要研究方向为算法设计与优化,以第一作者身份先后发表省级以上论文十多篇,主编教材两部,参编五部,主持及参与校级直至国J级各类项目十多项
  • 目录:
    第1 章 算法及其描述方法 . 1 

    1.1  为什么要编写程序 1 

    1.2  算法的概念及基本特征 . 2 

    1.3  结构化程序设计方法 3 

    1.4  算法的几种描述方法 5 

    1.4.1  自然语言 5 

    1.4.2  流程图 5 

    1.4.3  N-S 图 .6 

    1.4.4  计算机语言 .7 

    1.4.5  伪代码 9 

    1.5  C 语言简介 10 

    1.6  C 语言程序上机调试过程 .11 

    1.6.1  C 语言程序的编制运行过程 11 

    1.6.2  VC 6.0 的启动 . 12 

    1.6.3  VC 6.0 的关闭 . 12 

    1.6.4  VC 6.0 中新程序的建立及调试运行 . 12 

    1.6.5  当前源程序及相关环境的关闭 . 15 

    1.6.6  已存在的程序文件的打开及运行 . 15 

    习题 .16 

    第2 章 程序设计基础. 18 

    2.1  信息处理流程及其在C 语言中的基本实现方法 .18 

    2.1.1  信息处理流程概述 . 18 

    2.1.2  数据的输入、存储、加工处理及输出流程示例 19 

    2.2  顺序结构程序设计22 

    2.3  格式化输出及输入函数 24 

    2.3.1  格式化输出函数printf() 24 

    2.3.2  格式化输入函数scanf() . 27 

    2.4  选择结构程序设计27 

    2.5  循环结构程序设计 36 

    2.6  三种控制结构的综合应用 .44 

    2.7 标识符及其命名规则.57 

    2.8  常量、变量及数据类型 58 

    2.8.1  变量 . 58 

    2.8.2  数据类型 59 

    2.8.3  常量 . 61 

    2.9  运算符及其优先级和结合性 61 

    目 录CONTENTS 

    2.9.1  运算符的优先级及结合性概述 . 61 

    2.9.2  常见运算符及其相关说明 . 63 

    2.9.3  有关结合性的解释 . 65 

    2.10  不同类型数据间的转换与运算 .66 

    2.10.1  隐式自动转换 66 

    2.10.2  显式强制转换 68 

    习题 .69 

    第3 章 数组及字符串. 74 

    3.1  一维数组 .74 

    3.1.1  一维数组的定义. 74 

    3.1.2  一维数组元素的引用 75 

    3.1.3  一维数组的初始化 . 76 

    3.2  二维及多维数组87 

    3.2.1  二维数组的定义 87 

    3.2.2  多维数组 92 

    3.3  字符串 92 

    3.3.1  字符串的本质 92 

    3.3.2  字符数组 93 

    3.3.3  常用字符串操作函数 93 

    3.3.4  字符串应用举例 96 

    习题 .98 

    第4 章 复杂数据类型. 100 

    4.1  C 语言中的复杂数据类型概述 .100 

    4.2 结构体 100 

    4.2.1  结构体类型的定义 . 101 

    4.2.2  结构体变量的定义 . 102 

    4.2.3  结构体变量的引用 . 104 

    4.2.4  结构体变量的赋值 . 104 

    4.3  共用体108 

    4.3.1  共用体类型的定义 . 109 

    4.3.2  共用体变量的定义 . 110 

    4.3.3  共用体变量的引用 . 111 

    4.3.4  共用体变量的赋值. 112 

    4.4  枚举类型 .115 

    4.4.1  枚举类型的定义 116 

    4.4.2  枚举型变量的定义. 116 

    4.4.3 枚举型变量的赋值 . 116 

    4.4.4 枚举类型有关说明 . 116 

    习题 .119 

    第5 章 指  针 121 

    5.1 C 语言中的指针概述 .121 

    5.1.1 指针与指针变量. 121 

    5.1.2 指针相关运算 125 

    5.2 指针与数组的关系 126 

    5.2.1 数组的指针与指向一维数组元素的指针变量 . 126 

    5.2.2 一维数组与指针变量的关系 126 

    5.2.3 指向指针的指针变量 128 

    5.2.4 指针数组――元素类型为指针的数组 . 128 

    5.2.5 指针数组与指向指针的指针变量的关系 129 

    5.2.6 二维数组与指针变量的关系 131 

    5.3 指针与动态内存分配.135 

    5.3.1 C 语言内存管理概述 136 

    5.3.2 内存空间的动态分配 137 

    5.3.3 动态释放内存 138 

    5.3.4 动态内存分配的几种不同情形. 138 

    5.3.5 常见内存错误及其对策. 142 

    5.4 指针与字符串.142 

    5.4.1 用C 语言处理字符串的两种不同形式 143 

    5.4.2 字符型指针变量与字符型数组. 144 

    习题 .145 

    第6 章 函  数 146 

    6.1 C 语言函数简介146 

    6.1.1 函数的概念、分类 . 146 

    6.1.2 标准函数的使用. 146 

    6.2 自定义函数 148 

    6.2.1 自定义函数概述. 148 

    6.2.2 自定义函数的一般定义形式 150 

    6.2.3 自定义函数的调用 . 150 

    6.2.4 模块化程序设计 153 

    6.3 函数中参数的传递方式 155 

    6.3.1 按值传送 156 

    6.3.2 按地址传送 . 156 

    6.3.3  两种不同参数传递方式的选择 . 157 

    6.4  变量的作用域、生存期及存储类型 158 

    6.4.1  变量的作用域 158 

    6.4.2  变量的生存期 158 

    6.4.3  局部变量 158 

    6.4.4  全局变量 160 

    6.4.5  文件变量 161 

    6.4.6  变量的存储类型 162 

    6.4.7  auto 存储类型的变量与作用范围 . 162 

    6.4.8  static 存储类型的变量与作用范围 . 162 

    6.4.9  register 存储类型的变量与作用范围 163 

    6.4.10  extern 存储类型的变量与作用范围 164 

    6.4.11  外部变量在多文件系统中的应用 166 

    6.4.12  变量作用域、生存期及存储类型小结 . 167 

    6.5 函数的嵌套与递归调用 168 

    6.5.1  函数的嵌套调用 . 168 

    6.5.2  函数的递归调用. 168 

    习题 .172 

    第7 章 文  件 173 

    7.1  文件概述 .173 

    7.1.1  文件的概念 . 173 

    7.1.2  文件的分类 . 173 

    7.2 文件操作 .175 

    7.2.1  文件指针 176 

    7.2.2  文件操作基本步骤示例 176 

    7.3  文件操作相关函数 178 

    7.3.1  文件的打开:fopen() 函数 . 178 

    7.3.2  文件的关闭:fclose() 函数 . 179 

    7.3.3  文件格式化输出函数:fprintf() . 180 

    7.3.4  文件格式化输入函数:fscanf(). 180 

    7.3.5  判断是否到文件尾函数:feof() . 180 

    7.3.6  文件数据块读/ 写函数:fread() 和fwrite() 180 

    7.3.7  文件内部指针的定位 181 

    7.3.8  清除文件缓冲区函数:fflush() 184 

    习题 .186 

    第8 章 系统开发与链表 . 187 

    8.1  软件工程简介 .187 

    8.1.1  软件工程概述 187 

    8.1.2  软件工程中的瀑布模型 . 188 

    8.2 “班级基本信息管理系统”开发示例 190 

    8.2.1  问题的定义 . 191 

    8.2.2  可行性研究 . 191 

    8.2.3  需求分析 191 

    8.2.4  系统设计(概要设计) . 192 

    8.2.5  详细设计 193 

    8.2.6  编码 . 196 

    8.2.7  测试 . 200 

    8.2.8  运行及维护 . 200 

    8.3  链表与系统开发201 

    8.3.1  问题的定义 . 201 

    8.3.2  可行性研究 . 201 

    8.3.3  需求分析 201 

    8.3.4  系统设计(概要设计) . 201 

    8.3.5  详细设计(算法设计) . 204 

    8.3.6  编码 . 208 

    8.3.7  测试 . 214 

    8.3.8  运行与维护 . 214 

    习题 .214 

    第9 章 位运算 . 215 

    9.1  C 语言中的位运算 .215 

    9.2 位运算实际应用 217 

    9.2.1  按位与、或、异或及取反 . 217 

    9.2.2  移位运算 218 

    9.2.3  典型应用案例 219 

    9.3  位域 222 

    9.3.1  位域类型定义 223 

    9.3.2  位域变量定义 224 

    9.3.3  位域的使用 . 224 

    9.3.4  位域的空间分配 225 

    习题 .226 

    第10 章 预处理 227 

    10.1  预处理简介 227 

    10.2  宏定义 .227 

    10.2.1  无参宏定义 . 228 

    10.2.2  带参宏定义 . 228 

    10.2.3  取消宏定义 . 230 

    10.3  文件包含.230 

    10.4  条件编译 .231 

    习题 .233 

    附录A 学习建议 . 234 

    附录B 常见标准函数 235 

    附录C  C 语言关键字 253 

    附录D  ASCII 码表 255 

    附录E  C 语言常见错误举例说明 259 

    参考文献 267
查看详情
相关图书 / 更多
C程序设计与系统开发
C程序设计与问题求解
刘杰;鞠成东;丛晓红
C程序设计与系统开发
C程序设计
朱晓燕 主编;陈刚 程欣宇 沈宁 李支成 朱家成 副主编
C程序设计与系统开发
C程序设计教程(第4版)学习辅导
谭浩强
C程序设计与系统开发
C程序设计与问题求解实践教程
刘杰;徐丽;孟宇龙
C程序设计与系统开发
C程序设计与案例教程
蒋秀莲;乔淑云
C程序设计与系统开发
C程序设计习题解析及实践指导
郭伟青
C程序设计与系统开发
C程序设计(基于Linux平台)(微课版)
张同光;刘春红;田乔梅;武晓龙;宋丽丽
C程序设计与系统开发
C程序设计上机指导与习题集
王琳艳 主编;刘警 汪飞 王继克 副主编
C程序设计与系统开发
C程序设计教程(第4版)()
谭浩强 著
C程序设计与系统开发
C程序设计
张朋 张丕振 主编;顾健 马玲 孟庆新 刘晓慧 范彬 宋丹茹 周本海 赵越 副主编
C程序设计与系统开发
C程序设计教程(第3版)
刘华蓥;衣治安;吴雅娟;韩玉祥
C程序设计与系统开发
C程序设计(第2版)(大学计算机基础教育特色教材系列)
姜学锋、刘君瑞 著