书籍详情
C语言程序设计
作者:本书编写组 编
出版社:化学工业出版社
出版时间:2014-03-01
ISBN:9787122173904
定价:¥45.00
购买这本书可以去
内容简介
本书从 C 语言程序设计的基本原理及程序设计的基本思想出发,将应用的概念和实际操作贯穿于全书的始终,秉承帮助读者不但掌握知识,而且具备应用知识能力的编写理念。书中的主要内容包括数据类型、运算符、表达式、分支、循环、函数、数组、指针、结构体、文件的概念和应用以及指针和各种构造类型的混合应用等,除了具体教学内容外还引入了一些逻辑推理题作为实际案例,供读者分析讨论使用,大大提高了阅读的兴趣性。本书既可作为各类高等院校、计算机水平考试培训、成人教育学校作为开设程序设计课程的教材,也可供计算机爱好者自学使用。
作者简介
暂缺《C语言程序设计》作者简介
目录
1
引言 1
1.1 欢迎 / 1
1.2 程序设计概述 / 3
1.2.1 指令与程序 / 3
1.2.2 程序设计语言 / 4
1.2.3 程序开发的步骤 / 6
1.3 算法 / 7
1.3.1 算法的概念 / 7
1.3.2 算法的复杂性 / 8
1.3.3 算法的表示方法 / 8
1.4 结构化程序设计 / 10
1.5 C语言的编译与集成环境 / 11
1.5.1 C语言程序开发步骤 / 11
1.5.2 集成环境 / 12
2
数据类型 13
2.1 信息存储 / 13
2.1.1 信息编码 / 13
2.1.2 定点数与浮点数 / 14
2.1.3 信息存储 / 14
2.2 标识符 / 15
2.3 基本数据类型 / 17
2.4 常量 / 18
2.4.1 整型常量(整常数) / 18
2.4.2 实型常量 / 18
2.4.3 字符型常量 / 19
2.4.4 字符串常量 / 20
2.4.5 符号常量 / 21
2.5 变量 / 22
2.5.1 变量的定义 / 22
2.5.2 数据的存储 / 23
2.6 数据的输入与输出 / 25
2.6.1 输出字符putchar() / 25
2.6.2 输入字符getchar() / 26
2.6.3 格式化输出函数printf / 26
2.6.4 格式化输入函数scanf / 30
3
运算符与表达式 33
3.1 数据类型转换 / 33
3.2 运算符 / 34
3.3 表达式 / 34
3.4 算术表达式 / 35
3.4.1 算术运算符 / 35
3.4.2 自增运算符和自减运算符 / 35
3.4.3 算术运算符的优先级与结合性 / 36
3.4.4 算术表达式 / 37
3.5 位运算 / 37
3.6 赋值运算符 / 38
3.6.1 赋值运算符 / 38
3.6.2 赋值表达式 / 38
3.6.3 复合的赋值运算符 / 40
3.7 逗号运算符与逗号表达式 / 41
3.8 深入讨论表达式 / 42
4
分支结构 45
4.1 逻辑运算符和逻辑表达式 / 45
4.1.1 逻辑真与逻辑假 / 46
4.1.2 逻辑运算符 / 46
4.1.3 逻辑表达式 / 48
4.2 关系运算符和关系表达式 / 50
4.3 分支语句 / 52
4.3.1 if分支结构 / 52
4.3.2 空语句 / 55
4.3.3 复合语句 / 55
4.4 条件运算符 / 59
4.5 多分支if-else-if / 60
4.6 嵌套的if语句 / 63
4.7 switch和break语句 / 69
5
循环 77
5.1 while语句 / 78
5.2 do-while语句 / 81
5.3 for循环语句 / 83
5.4 三种循环语句的比较 / 86
5.5 循环嵌套 / 87
5.6 break和continue语句 / 88
5.7 goto语句 / 92
5.8 程序实例和分析 / 93
6
函数的使用 97
6.1 编写一个简单的函数 / 97
6.2 调用库函数 / 99
6.2.1 C语言的标准库函数 / 100
6.2.2 库函数的头文件 / 100
6.2.3 函数类型、函数名与形参 / 100
6.2.4 调用库函数 / 101
6.3 定义用户自定义函数 / 101
6.4 调用自定义函数 / 102
6.5 函数声明 / 104
6.5.1 函数声明 / 104
6.5.2 在函数外部进行函数声明 / 105
6.5.3 省略函数说明 / 106
6.6 函数的参数传递 / 107
6.6.1 参数传递 / 107
6.6.2 实参和形参数据类型不同 / 109
6.7 函数的返回值 / 110
6.7.1 函数返回 / 110
6.7.2 返回值 / 111
6.7.3 void类型的函数 / 112
6.7.4 函数返回值的数据类型 / 112
6.8 C语言程序的执行过程 / 113
6.9 函数的嵌套调用 / 114
6.10 局部变量和全局变量 / 115
6.10.1 局部变量 / 115
6.10.2 全局变量 / 115
6.10.3 内部变量和外部变量 / 116
6.11 变量的存储类别 / 117
6.11.1 存储期属性 / 117
6.11.2 存储类别属性 / 118
7
图形化界面 124
7.1 Turbo C绘图基础 / 126
7.2 设置图形工作环境 / 127
7.3 图形绘制函数 / 128
7.4 图形模式的文本显示 / 129
7.5 俄罗斯方块初步 / 129
7.6 综合应用 / 130
8
指针 132
8.1 变量的指针与指针变量 / 132
8.1.1 变量的指针与取地址运算符 / 132
8.1.2 指针变量 / 133
8.2 用指针访问数据 / 135
8.3 指针变量的运算 / 139
8.3.1 指针的赋值运算 / 139
8.3.2 指针的关系运算 / 141
8.3.3 指针的算术运算 / 141
8.4 指针作为函数的参数 / 143
9
数组 150
9.1 一维数组的定义和引用 / 150
9.1.1 一维数组的定义和引用 / 150
9.1.2 一维数组的存储 / 152
9.1.3 一维数组的初始化 / 153
9.1.4 一维数组程序举例 / 153
9.2 指针与一维数组 / 154
9.2.1 用数组名指针法访问数组元素 / 154
9.2.2 用指针访问数组元素 / 155
9.2.3 数组元素的指针访问法 / 155
9.2.4 数组元素的指针下标访问法 / 158
9.3 数组作为函数的参数 / 159
9.4 二维数组的定义和引用 / 162
9.4.1 二维数组的定义和引用 / 162
9.4.2 二维数组的存储 / 163
9.4.3 二维数组的初始化 / 164
9.4.4 二维数组程序举例 / 164
9.5 字符数组 / 168
9.5.1 字符数组的定义 / 168
9.5.2 字符数组的初始化 / 169
9.5.3 字符数组的输入输出 / 171
9.5.4 字符数组与字符串 / 173
9.6 指针与字符串 / 176
9.6.1 指向字符数组的指针 / 176
9.6.2 指向字符串常量的指针 / 177
9.6.3 字符串作为函数参数 / 179
9.6.4 字符串处理库函数 / 180
9.7 动态内存分配 / 186
9.7.1 void类型的指针 / 186
9.7.2 指针的强制类型转换 / 186
9.7.3 动态内存分配 / 187
9.8 综合实例 / 189
9.9 掷骰子游戏 / 191
9.10 显示游戏文本信息 / 194
10
结构体和共用体 195
10.1 结构体 / 195
10.2 结构体数组 / 199
10.3 结构体指针 / 201
10.4 结构体与函数 / 205
10.5 共用体 / 207
10.6 枚举类型 / 208
10.7 用typedef定义类型 / 209
11
深入讨论指针 210
11.1 指针数组 / 210
11.2 指向指针的指针 / 214
11.3 返回指针的函数 / 215
11.4 指向函数的指针 / 218
11.4.1 指向函数的指针 / 218
11.4.2 指向函数的指针作为函数参数 / 220
11.5 链表的概念 / 221
11.6 单向链表的基本操作 / 223
12
文件 231
12.1 文件类型 / 231
12.2 磁盘文件系统 / 232
12.3 文件类型指针 / 232
12.4 文件打开与关闭 / 233
12.5 文件读写 / 235
13
深入讨论函数与程序结构 240
13.1 函数的递归调用 / 240
13.1.1 编写递归函数求n! / 240
13.1.2 迭代和递归 / 244
13.2 带参的main函数 / 245
13.3 内部函数和外部函数 / 246
13.3.1 内部函数 / 246
13.3.2 外部函数 / 246
13.4 编译预处理 / 247
13.4.1 宏定义 / 247
13.4.2 文件包含 / 249
13.4.3 条件编译 / 251
14
综合应用设计 254
14.1 实例说明 / 254
14.2 俄罗斯方块程序源代码 / 255
14.3 新出现的函数 / 267
14.3.1 捕捉按键 / 267
14.3.2 memset函数 / 267
14.3.3 memcpy函数 / 267
14.4 基本位置参数 / 268
14.4.1 面板区 / 268
14.4.2 下一个提示区 / 268
14.4.3 信息显示区域 / 269
14.5 画面内容的刷新 / 269
14.5.1 将方块嵌入面板 / 269
14.5.2 删除满行 / 269
14.6 方块的运动 / 270
14.6.1 定时下落 / 270
14.6.2 判断翻转 / 270
14.6.3 翻转 / 271
14.6.4 判断移动 / 271
14.6.5 移动 / 271
14.6.6 下落 / 271
14.6.7 直落到底 / 271
参考文献 272
引言 1
1.1 欢迎 / 1
1.2 程序设计概述 / 3
1.2.1 指令与程序 / 3
1.2.2 程序设计语言 / 4
1.2.3 程序开发的步骤 / 6
1.3 算法 / 7
1.3.1 算法的概念 / 7
1.3.2 算法的复杂性 / 8
1.3.3 算法的表示方法 / 8
1.4 结构化程序设计 / 10
1.5 C语言的编译与集成环境 / 11
1.5.1 C语言程序开发步骤 / 11
1.5.2 集成环境 / 12
2
数据类型 13
2.1 信息存储 / 13
2.1.1 信息编码 / 13
2.1.2 定点数与浮点数 / 14
2.1.3 信息存储 / 14
2.2 标识符 / 15
2.3 基本数据类型 / 17
2.4 常量 / 18
2.4.1 整型常量(整常数) / 18
2.4.2 实型常量 / 18
2.4.3 字符型常量 / 19
2.4.4 字符串常量 / 20
2.4.5 符号常量 / 21
2.5 变量 / 22
2.5.1 变量的定义 / 22
2.5.2 数据的存储 / 23
2.6 数据的输入与输出 / 25
2.6.1 输出字符putchar() / 25
2.6.2 输入字符getchar() / 26
2.6.3 格式化输出函数printf / 26
2.6.4 格式化输入函数scanf / 30
3
运算符与表达式 33
3.1 数据类型转换 / 33
3.2 运算符 / 34
3.3 表达式 / 34
3.4 算术表达式 / 35
3.4.1 算术运算符 / 35
3.4.2 自增运算符和自减运算符 / 35
3.4.3 算术运算符的优先级与结合性 / 36
3.4.4 算术表达式 / 37
3.5 位运算 / 37
3.6 赋值运算符 / 38
3.6.1 赋值运算符 / 38
3.6.2 赋值表达式 / 38
3.6.3 复合的赋值运算符 / 40
3.7 逗号运算符与逗号表达式 / 41
3.8 深入讨论表达式 / 42
4
分支结构 45
4.1 逻辑运算符和逻辑表达式 / 45
4.1.1 逻辑真与逻辑假 / 46
4.1.2 逻辑运算符 / 46
4.1.3 逻辑表达式 / 48
4.2 关系运算符和关系表达式 / 50
4.3 分支语句 / 52
4.3.1 if分支结构 / 52
4.3.2 空语句 / 55
4.3.3 复合语句 / 55
4.4 条件运算符 / 59
4.5 多分支if-else-if / 60
4.6 嵌套的if语句 / 63
4.7 switch和break语句 / 69
5
循环 77
5.1 while语句 / 78
5.2 do-while语句 / 81
5.3 for循环语句 / 83
5.4 三种循环语句的比较 / 86
5.5 循环嵌套 / 87
5.6 break和continue语句 / 88
5.7 goto语句 / 92
5.8 程序实例和分析 / 93
6
函数的使用 97
6.1 编写一个简单的函数 / 97
6.2 调用库函数 / 99
6.2.1 C语言的标准库函数 / 100
6.2.2 库函数的头文件 / 100
6.2.3 函数类型、函数名与形参 / 100
6.2.4 调用库函数 / 101
6.3 定义用户自定义函数 / 101
6.4 调用自定义函数 / 102
6.5 函数声明 / 104
6.5.1 函数声明 / 104
6.5.2 在函数外部进行函数声明 / 105
6.5.3 省略函数说明 / 106
6.6 函数的参数传递 / 107
6.6.1 参数传递 / 107
6.6.2 实参和形参数据类型不同 / 109
6.7 函数的返回值 / 110
6.7.1 函数返回 / 110
6.7.2 返回值 / 111
6.7.3 void类型的函数 / 112
6.7.4 函数返回值的数据类型 / 112
6.8 C语言程序的执行过程 / 113
6.9 函数的嵌套调用 / 114
6.10 局部变量和全局变量 / 115
6.10.1 局部变量 / 115
6.10.2 全局变量 / 115
6.10.3 内部变量和外部变量 / 116
6.11 变量的存储类别 / 117
6.11.1 存储期属性 / 117
6.11.2 存储类别属性 / 118
7
图形化界面 124
7.1 Turbo C绘图基础 / 126
7.2 设置图形工作环境 / 127
7.3 图形绘制函数 / 128
7.4 图形模式的文本显示 / 129
7.5 俄罗斯方块初步 / 129
7.6 综合应用 / 130
8
指针 132
8.1 变量的指针与指针变量 / 132
8.1.1 变量的指针与取地址运算符 / 132
8.1.2 指针变量 / 133
8.2 用指针访问数据 / 135
8.3 指针变量的运算 / 139
8.3.1 指针的赋值运算 / 139
8.3.2 指针的关系运算 / 141
8.3.3 指针的算术运算 / 141
8.4 指针作为函数的参数 / 143
9
数组 150
9.1 一维数组的定义和引用 / 150
9.1.1 一维数组的定义和引用 / 150
9.1.2 一维数组的存储 / 152
9.1.3 一维数组的初始化 / 153
9.1.4 一维数组程序举例 / 153
9.2 指针与一维数组 / 154
9.2.1 用数组名指针法访问数组元素 / 154
9.2.2 用指针访问数组元素 / 155
9.2.3 数组元素的指针访问法 / 155
9.2.4 数组元素的指针下标访问法 / 158
9.3 数组作为函数的参数 / 159
9.4 二维数组的定义和引用 / 162
9.4.1 二维数组的定义和引用 / 162
9.4.2 二维数组的存储 / 163
9.4.3 二维数组的初始化 / 164
9.4.4 二维数组程序举例 / 164
9.5 字符数组 / 168
9.5.1 字符数组的定义 / 168
9.5.2 字符数组的初始化 / 169
9.5.3 字符数组的输入输出 / 171
9.5.4 字符数组与字符串 / 173
9.6 指针与字符串 / 176
9.6.1 指向字符数组的指针 / 176
9.6.2 指向字符串常量的指针 / 177
9.6.3 字符串作为函数参数 / 179
9.6.4 字符串处理库函数 / 180
9.7 动态内存分配 / 186
9.7.1 void类型的指针 / 186
9.7.2 指针的强制类型转换 / 186
9.7.3 动态内存分配 / 187
9.8 综合实例 / 189
9.9 掷骰子游戏 / 191
9.10 显示游戏文本信息 / 194
10
结构体和共用体 195
10.1 结构体 / 195
10.2 结构体数组 / 199
10.3 结构体指针 / 201
10.4 结构体与函数 / 205
10.5 共用体 / 207
10.6 枚举类型 / 208
10.7 用typedef定义类型 / 209
11
深入讨论指针 210
11.1 指针数组 / 210
11.2 指向指针的指针 / 214
11.3 返回指针的函数 / 215
11.4 指向函数的指针 / 218
11.4.1 指向函数的指针 / 218
11.4.2 指向函数的指针作为函数参数 / 220
11.5 链表的概念 / 221
11.6 单向链表的基本操作 / 223
12
文件 231
12.1 文件类型 / 231
12.2 磁盘文件系统 / 232
12.3 文件类型指针 / 232
12.4 文件打开与关闭 / 233
12.5 文件读写 / 235
13
深入讨论函数与程序结构 240
13.1 函数的递归调用 / 240
13.1.1 编写递归函数求n! / 240
13.1.2 迭代和递归 / 244
13.2 带参的main函数 / 245
13.3 内部函数和外部函数 / 246
13.3.1 内部函数 / 246
13.3.2 外部函数 / 246
13.4 编译预处理 / 247
13.4.1 宏定义 / 247
13.4.2 文件包含 / 249
13.4.3 条件编译 / 251
14
综合应用设计 254
14.1 实例说明 / 254
14.2 俄罗斯方块程序源代码 / 255
14.3 新出现的函数 / 267
14.3.1 捕捉按键 / 267
14.3.2 memset函数 / 267
14.3.3 memcpy函数 / 267
14.4 基本位置参数 / 268
14.4.1 面板区 / 268
14.4.2 下一个提示区 / 268
14.4.3 信息显示区域 / 269
14.5 画面内容的刷新 / 269
14.5.1 将方块嵌入面板 / 269
14.5.2 删除满行 / 269
14.6 方块的运动 / 270
14.6.1 定时下落 / 270
14.6.2 判断翻转 / 270
14.6.3 翻转 / 271
14.6.4 判断移动 / 271
14.6.5 移动 / 271
14.6.6 下落 / 271
14.6.7 直落到底 / 271
参考文献 272
猜您喜欢