书籍详情
C语言程序设计
作者:朱艳辉
出版社:电子工业出版社
出版时间:2018-01-01
ISBN:9787121331831
定价:¥49.00
购买这本书可以去
内容简介
本书以培养学生程序设计思维和基本能力为目标,在知识点的组织结构方面,充分考虑C语言重要语法知识点的全面性,又突出学生开发程序的实践能力和工程能力的训练。本书共11章,全面讲述C语言语法知识点,从简单数据结构、简单控制结构到复杂数据结构、复杂控制结构,循序渐进地展示C语言特性。本书采用启发式的写作风格,以程序设计主线,以应用编程为驱动,每个章节按照提出问题、分析问题、解决问题的思路写作。本书的所有参考资料请参见网站http://jsjjc.hut.edu.cn或http://www.hxedu.com.cn。本书适用对象是高等院校计算机专业及非计算机专业的师生,计算机等级考试培训班师生,广大C语言自学者。
作者简介
朱艳辉,女,湖南工业大学计算机学院教授,副院长,湖南省高教学会计算机教育专业委员会理事,中国计算机学会高级会员。
目录
目 录
第1章 C语言程序设计概论 1
1.1 问题提出:程序设计概述 1
1.2 程序设计语言 3
1.2.1 自然语言和计算机语言 3
1.2.2 程序设计语言介绍 4
1.3 初识C语言程序 4
1.4 实现问题求解的过程 6
1.4.1 计算机求解问题步骤 6
1.4.2 问题分析和建模 6
1.4.3 算法设计 6
1.4.4 程序设计 8
1.5 C语言的发展历史及特点 9
1.5.1 C语言的发展 9
1.5.2 C语言的特点 11
1.5.3 C语言的基本符号 11
1.6 C语言程序的开发环境 13
1.6.1 C语言的一般上机步骤 13
1.6.2 Visual C 2010集成开发环境 14
1.7 科学计算器和学生成绩管理系统 17
本章小结 19
习题1 19
第2章 简单的C程序设计 21
2.1 问题提出:顺序结构程序设计 21
2.2 格式输出语句 22
2.2.1 格式输出语句程序举例和解析 22
2.2.2 格式输出printf()函数 23
2.3 格式输入语句 26
2.3.1 格式输入语句程序举例和解析 26
2.3.2 格式输入函数scanf() 27
2.4 字符数据输入、输出 30
2.4.1 字符数据输入、输出程序举例和解析 30
2.4.2 字符输出函数putchar()和字符输入函数getchar() 30
2.5 简单C程序设计举例 32
本章小结 33
习题2 35
第3章 选择(分支)结构程序设计 37
3.1 问题提出:选择(分支)结构程序设计 37
3.2 if语句 38
3.2.1 简单if语句 38
3.2.2 关系运算符 40
3.2.3 逻辑运算符 41
3.2.4 if-else语句 42
3.2.5 if-else-if语句 44
3.2.6 if语句嵌套 45
3.3 条件表达式 48
3.4 switch语句 49
3.4.1 switch语句程序举例 49
3.4.2 switch语句应用 50
3.5 选择结构程序综合应用 53
本章小结 57
习题3 59
第4章 循环结构程序设计 61
4.1 问题提出:循环结构程序设计 61
4.2 while循环 62
4.2.1 while循环程序举例和解析 62
4.2.2 while语句 63
4.3 do-while循环 64
4.3.1 do-while循环程序举例和解析 64
4.3.2 do-while语句 65
4.4 for循环 66
4.4.1 for循环程序举例和解析 66
4.4.2 for语句 67
4.5 循环嵌套 68
4.5.1 循环程序举例和解析 68
4.5.2 循环嵌套 69
4.5.3 break和continue语句 71
4.6 循环结构程序应用综合举例 73
本章小结 76
习题4 77
第5章 函数 80
5.1 问题提出:函数的应用 80
5.2 函数的定义、声明和调用 82
5.2.1 有关函数的程序举例和解析 82
5.2.2 函数的定义 82
5.2.3 函数的声明 83
5.2.4 函数的调用 84
5.3 函数的参数和值 86
5.3.1 函数应用程序举例和解析 86
5.3.2 函数的参数 87
5.3.3 函数的值 88
5.4 函数的嵌套调用 88
5.4.1 函数的嵌套调用程序举例和解析 88
5.4.2 函数的嵌套调用说明 89
5.5 函数的递归调用 89
5.5.1 函数的递归调用程序举例和解析 89
5.5.2 函数的递归调用说明 90
5.6 变量的作用域和存储类别 91
5.6.1 变量应用的程序举例和解析 91
5.6.2 变量的作用域 92
5.6.3 变量的存储类别 94
5.7 编译预处理命令 98
5.7.1 编译预处理程序举例和解析 98
5.7.2 宏定义 98
5.7.3 文件包含 102
5.7.4 条件编译 103
5.8 函数应用举例 105
本章小结 109
习题5 109
第6章 数据类型、常量、变量、表达式 112
6.1 C语言的基本数据类型及其内部表示 112
6.1.1 数据类型概述 112
6.1.2 整数类型 113
6.1.3 实数类型 114
6.1.4 字符类型 115
6.2 常量和变量 116
6.2.1 常量 116
6.2.2 变量 120
6.3 运算符和表达式 122
6.3.1 赋值运算符和赋值表达式 123
6.3.2 算术运算符和算术表达式 125
6.3.3 位运算符和位运算表达式 127
6.3.4 逗号运算符和求字节运算符 129
6.4 数据类型转换 131
6.4.1 类型自动转换 131
6.4.2 赋值转换 132
6.4.3 强制类型转换 133
本章小结 134
习题6 136
第7章 数组 140
7.1 问题的提出:数组的运用 140
7.2 一维数组 141
7.2.1 一维数组的程序举例和解析 141
7.2.2 一维数组类型定义 142
7.2.3 一维数组元素的引用 143
7.2.4 一维数组元素的初始化 144
7.3 二维数组 145
7.3.1 二维数组的程序举例和解析 145
7.3.2 二维数组的定义 147
7.3.3 二维数组元素的引用 147
7.3.4 二维数组的初始化 148
7.4 字符数组 150
7.4.1 程序举例和解析 150
7.4.2 字符数组的定义和元素引用 150
7.4.3 字符串变量 151
7.5 字符串常用函数 153
7.6 向函数传递数组 156
7.6.1 向函数传递一维数组 156
7.6.2 向函数传递二维数组 157
7.7 数组应用程序举例 158
本章小结 165
习题7 165
第8章 指针 169
8.1 问题的提出:指针的运用 169
8.2 指针变量的定义、赋值和运算 171
8.2.1 指针变量程序举例和解析 171
8.2.2 指针变量的定义 172
8.2.3 指针变量的赋值及初始化 173
8.2.4 指针变量的运算 174
8.3 指针作为函数的参数 176
8.3.1 指针作为函数参数程序举例和解析 176
8.3.2 指针作为函数参数时的注意事项 178
8.4 指针与一维数组 178
8.4.1 指针与一维数组程序举例和解析 178
8.4.2 指针与一维数组的关系 179
8.5 指针与字符串 181
8.5.1 指针与字符串程序举例和解析 181
8.5.2 指针与字符串、字符数组的关系 182
8.6 指针与二维数组 183
8.6.1 指针与二维数组程序举例和解析 183
8.6.2 指针与二维数组的关系 184
8.7 指针与内存的动态分配 186
8.7.1 指针与内存的动态分配程序举例与解析 187
8.7.2 动态内存分配的步骤 188
8.7.3 动态内存分配函数 188
8.8 指针进阶 189
8.8.1 指针作为函数返回值 189
8.8.2 指向函数的指针 190
8.8.3 指针数组 192
8.8.4 指向指针的指针 193
8.8.5 指针数组名与指针数组元素的关系 194
8.8.6 main()函数的参数和返回值 194
8.9 指针综合应用 196
本章小结 202
习题8 205
第9章 结构体、共用体和枚举 210
9.1 问题的提出:结构体、共用体和枚举的运用 210
9.2 结构体 211
9.2.1 结构体程序举例和解析 211
9.2.2 结构体类型 214
9.2.3 结构体类型变量 215
9.2.4 结构体数组 217
9.2.5 结构体指针 219
9.2.6 结构变量、结构指针作为函数参数 220
9.2.7 定义自己的类型名 222
9.3 链表 223
9.3.1 链表程序举例和解析 223
9.3.2 链表的概念 225
9.3.3 链表的操作 225
9.4 共用体 228
9.4.1 共用体程序举例和解析 228
9.4.2 共用体类型及变量的定义 229
9.4.3 共用体变量的引用 229
9.5 枚举类型 230
9.5.1 枚举类型程序举例与解析 230
9.5.2 枚举类型基本概念 231
9.6 应用程序举例 233
本章小结 235
习题9 236
第10章 文件 240
10.1 问题的提出:文件在程序设计中的运用 240
10.2 文件概述 241
10.2.1 有关文件的程序举例和解析 241
10.2.2 文件分类 242
10.2.3 C语言对文件的处理方法 242
10.2.4 文件结构指针 243
10.3 文件的打开和关闭 244
10.3.1 文件的打开和关闭程序举例和解析 244
10.3.2 文件的打开 245
10.3.3 文件的关闭 246
10.4 文件的读和写 247
10.4.1 文件的读和写程序举例和解析 247
10.4.2 字符方式文件读函数fgetc()、写函数fputc() 248
10.4.3 字符串方式文件读函数fgets()、写函数fputs() 249
10.4.4 格式化文件读函数fscanf()、写函数fprintf() 250
10.4.5 数据块读函数fread()、写函数fwrite() 252
10.5 文件的随机读写 254
10.5.1 文件的随机读写程序举例和解析 254
10.5.2 文件的定位函数 254
10.6 文件的错误检测 256
10.7 程序设计举例 256
本章小结 259
习题10 260
第11章 C语言的综合应用 264
11.1 科学计算器 264
11.1.1 科学计算器的设计思想 264
11.1.2 函数和数据结构设计 265
11.2 学生成绩管理系统 274
11.2.1 学生成绩管理系统设计要求 274
11.2.2 函数和数据结构设计 276
11.2.3 学生成绩管理系统参考源代码 280
本章小结 294
习题11 294
附录A ASCII码表 296
附录B C语言中运算符的优先级与结合性 297
附录C C语言的关键字及其用途 298
附录D C语言常用语法摘要 299
附录E C语言常用标准库函数 303
参考文献 311
第1章 C语言程序设计概论 1
1.1 问题提出:程序设计概述 1
1.2 程序设计语言 3
1.2.1 自然语言和计算机语言 3
1.2.2 程序设计语言介绍 4
1.3 初识C语言程序 4
1.4 实现问题求解的过程 6
1.4.1 计算机求解问题步骤 6
1.4.2 问题分析和建模 6
1.4.3 算法设计 6
1.4.4 程序设计 8
1.5 C语言的发展历史及特点 9
1.5.1 C语言的发展 9
1.5.2 C语言的特点 11
1.5.3 C语言的基本符号 11
1.6 C语言程序的开发环境 13
1.6.1 C语言的一般上机步骤 13
1.6.2 Visual C 2010集成开发环境 14
1.7 科学计算器和学生成绩管理系统 17
本章小结 19
习题1 19
第2章 简单的C程序设计 21
2.1 问题提出:顺序结构程序设计 21
2.2 格式输出语句 22
2.2.1 格式输出语句程序举例和解析 22
2.2.2 格式输出printf()函数 23
2.3 格式输入语句 26
2.3.1 格式输入语句程序举例和解析 26
2.3.2 格式输入函数scanf() 27
2.4 字符数据输入、输出 30
2.4.1 字符数据输入、输出程序举例和解析 30
2.4.2 字符输出函数putchar()和字符输入函数getchar() 30
2.5 简单C程序设计举例 32
本章小结 33
习题2 35
第3章 选择(分支)结构程序设计 37
3.1 问题提出:选择(分支)结构程序设计 37
3.2 if语句 38
3.2.1 简单if语句 38
3.2.2 关系运算符 40
3.2.3 逻辑运算符 41
3.2.4 if-else语句 42
3.2.5 if-else-if语句 44
3.2.6 if语句嵌套 45
3.3 条件表达式 48
3.4 switch语句 49
3.4.1 switch语句程序举例 49
3.4.2 switch语句应用 50
3.5 选择结构程序综合应用 53
本章小结 57
习题3 59
第4章 循环结构程序设计 61
4.1 问题提出:循环结构程序设计 61
4.2 while循环 62
4.2.1 while循环程序举例和解析 62
4.2.2 while语句 63
4.3 do-while循环 64
4.3.1 do-while循环程序举例和解析 64
4.3.2 do-while语句 65
4.4 for循环 66
4.4.1 for循环程序举例和解析 66
4.4.2 for语句 67
4.5 循环嵌套 68
4.5.1 循环程序举例和解析 68
4.5.2 循环嵌套 69
4.5.3 break和continue语句 71
4.6 循环结构程序应用综合举例 73
本章小结 76
习题4 77
第5章 函数 80
5.1 问题提出:函数的应用 80
5.2 函数的定义、声明和调用 82
5.2.1 有关函数的程序举例和解析 82
5.2.2 函数的定义 82
5.2.3 函数的声明 83
5.2.4 函数的调用 84
5.3 函数的参数和值 86
5.3.1 函数应用程序举例和解析 86
5.3.2 函数的参数 87
5.3.3 函数的值 88
5.4 函数的嵌套调用 88
5.4.1 函数的嵌套调用程序举例和解析 88
5.4.2 函数的嵌套调用说明 89
5.5 函数的递归调用 89
5.5.1 函数的递归调用程序举例和解析 89
5.5.2 函数的递归调用说明 90
5.6 变量的作用域和存储类别 91
5.6.1 变量应用的程序举例和解析 91
5.6.2 变量的作用域 92
5.6.3 变量的存储类别 94
5.7 编译预处理命令 98
5.7.1 编译预处理程序举例和解析 98
5.7.2 宏定义 98
5.7.3 文件包含 102
5.7.4 条件编译 103
5.8 函数应用举例 105
本章小结 109
习题5 109
第6章 数据类型、常量、变量、表达式 112
6.1 C语言的基本数据类型及其内部表示 112
6.1.1 数据类型概述 112
6.1.2 整数类型 113
6.1.3 实数类型 114
6.1.4 字符类型 115
6.2 常量和变量 116
6.2.1 常量 116
6.2.2 变量 120
6.3 运算符和表达式 122
6.3.1 赋值运算符和赋值表达式 123
6.3.2 算术运算符和算术表达式 125
6.3.3 位运算符和位运算表达式 127
6.3.4 逗号运算符和求字节运算符 129
6.4 数据类型转换 131
6.4.1 类型自动转换 131
6.4.2 赋值转换 132
6.4.3 强制类型转换 133
本章小结 134
习题6 136
第7章 数组 140
7.1 问题的提出:数组的运用 140
7.2 一维数组 141
7.2.1 一维数组的程序举例和解析 141
7.2.2 一维数组类型定义 142
7.2.3 一维数组元素的引用 143
7.2.4 一维数组元素的初始化 144
7.3 二维数组 145
7.3.1 二维数组的程序举例和解析 145
7.3.2 二维数组的定义 147
7.3.3 二维数组元素的引用 147
7.3.4 二维数组的初始化 148
7.4 字符数组 150
7.4.1 程序举例和解析 150
7.4.2 字符数组的定义和元素引用 150
7.4.3 字符串变量 151
7.5 字符串常用函数 153
7.6 向函数传递数组 156
7.6.1 向函数传递一维数组 156
7.6.2 向函数传递二维数组 157
7.7 数组应用程序举例 158
本章小结 165
习题7 165
第8章 指针 169
8.1 问题的提出:指针的运用 169
8.2 指针变量的定义、赋值和运算 171
8.2.1 指针变量程序举例和解析 171
8.2.2 指针变量的定义 172
8.2.3 指针变量的赋值及初始化 173
8.2.4 指针变量的运算 174
8.3 指针作为函数的参数 176
8.3.1 指针作为函数参数程序举例和解析 176
8.3.2 指针作为函数参数时的注意事项 178
8.4 指针与一维数组 178
8.4.1 指针与一维数组程序举例和解析 178
8.4.2 指针与一维数组的关系 179
8.5 指针与字符串 181
8.5.1 指针与字符串程序举例和解析 181
8.5.2 指针与字符串、字符数组的关系 182
8.6 指针与二维数组 183
8.6.1 指针与二维数组程序举例和解析 183
8.6.2 指针与二维数组的关系 184
8.7 指针与内存的动态分配 186
8.7.1 指针与内存的动态分配程序举例与解析 187
8.7.2 动态内存分配的步骤 188
8.7.3 动态内存分配函数 188
8.8 指针进阶 189
8.8.1 指针作为函数返回值 189
8.8.2 指向函数的指针 190
8.8.3 指针数组 192
8.8.4 指向指针的指针 193
8.8.5 指针数组名与指针数组元素的关系 194
8.8.6 main()函数的参数和返回值 194
8.9 指针综合应用 196
本章小结 202
习题8 205
第9章 结构体、共用体和枚举 210
9.1 问题的提出:结构体、共用体和枚举的运用 210
9.2 结构体 211
9.2.1 结构体程序举例和解析 211
9.2.2 结构体类型 214
9.2.3 结构体类型变量 215
9.2.4 结构体数组 217
9.2.5 结构体指针 219
9.2.6 结构变量、结构指针作为函数参数 220
9.2.7 定义自己的类型名 222
9.3 链表 223
9.3.1 链表程序举例和解析 223
9.3.2 链表的概念 225
9.3.3 链表的操作 225
9.4 共用体 228
9.4.1 共用体程序举例和解析 228
9.4.2 共用体类型及变量的定义 229
9.4.3 共用体变量的引用 229
9.5 枚举类型 230
9.5.1 枚举类型程序举例与解析 230
9.5.2 枚举类型基本概念 231
9.6 应用程序举例 233
本章小结 235
习题9 236
第10章 文件 240
10.1 问题的提出:文件在程序设计中的运用 240
10.2 文件概述 241
10.2.1 有关文件的程序举例和解析 241
10.2.2 文件分类 242
10.2.3 C语言对文件的处理方法 242
10.2.4 文件结构指针 243
10.3 文件的打开和关闭 244
10.3.1 文件的打开和关闭程序举例和解析 244
10.3.2 文件的打开 245
10.3.3 文件的关闭 246
10.4 文件的读和写 247
10.4.1 文件的读和写程序举例和解析 247
10.4.2 字符方式文件读函数fgetc()、写函数fputc() 248
10.4.3 字符串方式文件读函数fgets()、写函数fputs() 249
10.4.4 格式化文件读函数fscanf()、写函数fprintf() 250
10.4.5 数据块读函数fread()、写函数fwrite() 252
10.5 文件的随机读写 254
10.5.1 文件的随机读写程序举例和解析 254
10.5.2 文件的定位函数 254
10.6 文件的错误检测 256
10.7 程序设计举例 256
本章小结 259
习题10 260
第11章 C语言的综合应用 264
11.1 科学计算器 264
11.1.1 科学计算器的设计思想 264
11.1.2 函数和数据结构设计 265
11.2 学生成绩管理系统 274
11.2.1 学生成绩管理系统设计要求 274
11.2.2 函数和数据结构设计 276
11.2.3 学生成绩管理系统参考源代码 280
本章小结 294
习题11 294
附录A ASCII码表 296
附录B C语言中运算符的优先级与结合性 297
附录C C语言的关键字及其用途 298
附录D C语言常用语法摘要 299
附录E C语言常用标准库函数 303
参考文献 311
猜您喜欢