C语言程序设计教程蒋清明,C语言程序设计

本书结构严谨,循序渐进地讲述C语言程序设计的基本知识、基本技能和编程方法;举例经典,许多例题习题都是工程应用或等级考试中的基本算法的应用。

全书共分9章,主要内容包括基本数据类型和运算符、控制结构、函数、数组、指针、结构与共用、文件以及文本与图形处理。每一章都附有精选的、多种类型的练习题,有助于读者复习、巩固所学知识,培养读者的实际编程能力。

本书配有《C语言程序设计上机与习题选解》。该书使学生明确实验目的、实验任务和实验方法,可大大改善实验效果,减轻教师指导学生实验的工作量;同时,书中给出的题解有助于学生开阔视野,明朗思路,规范书写,方便调试。

本书可以作为各类高等院校、各类高职院校计算机专业及理工科非计算机专业学生学习“计算机程序设计”课程的教材,也可作为广大计算机爱好者学习C程序设计语言的参考书。 第1章 绪论 1

1.1 C语言的发展过程 1

1.1.1 计算机语言的发展过程 1

1.1.2 C语言的发展过程 2

1.2 C语言的特点 2

1.3 C程序的结构和书写格式 3

1.3.1 C程序的结构 3

1.3.2 C程序的书写格式 4

1.4 Turbo C上机操作 4

1.4.1 C语言程序的生成过程 4

1.4.2 Turbo C 2.0上机操作过程 4

习题 5

第2章 基本数据类型与运算符 7

2.1 数据类型和取值范围 7

2.1.1 数据类型和取值范围 7

2.1.2 整型常量 8

2.1.3 实型常量 9

2.1.4 字符常量 9

2.1.5 字符串类型 10

2.2 运算符 11

2.2.1 优先级与结合规则 11

2.2.2 赋值运算与连续赋值 12

2.2.3 算术运算 12

2.2.4 关系运算 14

2.2.5 逻辑运算、连续比较和逻辑优化 14

2.2.6 位运算 15

2.2.7 条件运算 16

2.2.8 复合赋值运算 17

2.2.9 逗号运算 17

2.2.10 其他运算sizeof 18

2.2.11 类型转换与类型转换规则 18

2.3 输入/输出函数 21

2.3.1 格式化输出函数printf 21

2.3.2 格式化输入函数scanf 23

2.3.3 字符输入/输出函数 25

习题 26

第3章 控制结构 29

3.1 程序结构框图 29

3.1.1 自然语言描述 29

3.1.2 流程图 30

3.1.3 N-S图 31

3.1.4 结构化程序设计 31

3.1.5 复合语句 32

3.2 二分支结构 32

3.2.1 二分支结构选择语句 33

3.2.2 不平衡if结构 35

3.2.3 if语句的嵌套 36

3.3 多分支结构 40

3.4 循环结构 44

3.4.1 for循环 44

3.4.2 while语句 47

3.4.3 do~while语句 48

3.4.4 循环嵌套 50

3.5 break与continue语句 52

3.5.1 break语句 52

3.5.2 continue语句 53

3.5.3 goto语句 54

习题 55

第4章 函数 60

4.1 函数调用过程 60

4.2 函数的定义 61

4.2.1 函数定义的一般形式 61

4.2.2 函数定义中的要点说明 61

4.2.3 函数的声明 65

4.3 递归函数 66

4.3.1 递归概念 66

4.3.2 递归举例 67

4.4 存储类型、生存期和作用域 70

4.4.1 存储类型 70

4.4.2 生存期和作用域 71

4.5 编译预处理 77

4.5.1 文件包含 78

4.5.2 宏定义 79

4.5.3 条件编译 81

习题 83

第5章 数组 88

5.1 一维数组 88

5.1.1 一维数组的定义与初始化 88

5.1.2 一维数组的引用 90

5.1.3 字符型数组与字符串 91

5.1.4 字符串操作 93

5.2 二维数组 96

5.2.1 二维数组的定义 96

5.2.2 二维数组的引用 97

5.3 多维数组 99

5.4 函数与数组 101

5.4.1 函数与一维数组 101

5.4.2 函数与二维数组 103

5.5 问题与解答 106

5.5.1 “气泡法”排序问题 106

5.5.2 二分法查找问题 108

5.5.3 Josephus(约瑟夫)问题 109

习题 110

第6章 指针 117

6.1 指针与变量 117

6.1.1 指针的基本概念 117

6.1.2 指针变量的定义与引用 118

6.1.3 指针的运算 120

6.1.4 指向指针的指针 121

6.2 指针与数组 122

6.2.1 指向数组元素的指针 122

6.2.2 指向数组的指针 130

6.2.3 指针数组 136

6.2.4 指针与字符串 140

6.3 指针与函数 143

6.3.1 指针作函数参数 143

6.3.2 返回指针值的函数 147

6.3.3 函数指针 149

6.4 问题与解答 152

6.4.1 本章重点概念的复习 152

6.4.2 “选择法”排序问题 152

6.4.3 子串定位问题 153

习题 154

第7章 结构与共用 161

7.1 结构类型 161

7.1.1 结构类型的定义、初始化与使用 161

7.1.2 结构类型数组 166

7.1.3 结构类型数据的指针 167

7.1.4 嵌套结构 171

7.1.5 用指针处理链表 172

7.2 共用类型 179

7.2.1 共用类型的定义 179

7.2.2 共用类型变量的引用 181

7.3 枚举类型 183

7.4 位域 185

7.4.1 位运算符与位运算 185

7.4.2 位域 186

7.5 自定义类型 188

习题 189

第8章 文件 199

8.1 文件概述与文件类型指针 199

8.1.1 文件概述 199

8.1.2 文件类型指针 200

8.2 文件的打开与关闭 201

8.2.1 文件的打开 201

8.2.2 文件的关闭 202

8.3 文件的读写 203

8.3.1 字符读写函数fgetc()和fputc() 203

8.3.2 字符串读写函数fgets()和fputs() 205

8.3.3 格式化读写函数fscanf()和fprintf() 207

8.3.4 数据块读写函数fread()和fwrite() 209

8.4 文件的定位 211

8.5 文件检测 213

8.6 文件的低层操作 214

习题 217

*第9章 文本与图形处理 224

9.1 文本的屏幕输出与键盘操作 224

9.1.1 文本的屏幕输出 224

9.1.2 键盘操作 230

9.1.3 综合实例程序 232

9.2 图形编程 235

9.2.1 图形模式初始化 235

9.2.2 独立图形运行程序的建立 239

9.2.3 屏幕颜色的设置和清屏函数 241

9.2.4 基本图形处理函数 243

9.2.5 图形模式下的文本输出 250

9.2.6 综合图形实例程序 253

附录1 常用字符与ASCII值对照表 256

附录2 C语言保留字一览表 258

附录3 运算符的优先级及其结合性 259

附录4 常用C库函数 260

参考文献 265

内容简介:

本书结构严谨,循序渐进地讲述C语言程序设计的基本知识、基本技能和编程方法;举例经典,许多例题习题都是工程应用或等级考试中的基本算法的应用。

全书共分9章,主要内容包括基本数据类型和运算符、控制结构、函数、数组、指针、结构与共用、文件以及文本与图形处理。每一章都附有精选的、多种类型的练习题,有助于读者复习、巩固所学知识,培养读者的实际编程能力。

本书配有《C语言程序设计上机与习题选解》。该书使学生明确实验目的、实验任务和实验方法,可大大改善实验效果,减轻教师指导学生实验的工作量;同时,书中给出的题解有助于学生开阔视野,明朗思路,规范书写,方便调试。

本书可以作为各类高等院校、各类高职院校计算机专业及理工科非计算机专业学生学习“计算机程序设计”课程的教材,也可作为广大计算机爱好者学习C程序设计语言的参考书。

目录:

第1章 绪论 1

1.1 C语言的发展过程 1

1.1.1 计算机语言的发展过程 1

1.1.2 C语言的发展过程 2

1.2 C语言的特点 2

1.3 C程序的结构和书写格式 3

1.3.1 C程序的结构 3

1.3.2 C程序的书写格式 4

1.4 Turbo C上机操作 4

1.4.1 C语言程序的生成过程 4

1.4.2 Turbo C 2.0上机操作过程 4

习题 5

第2章 基本数据类型与运算符 7

2.1 数据类型和取值范围 7

2.1.1 数据类型和取值范围 7

2.1.2 整型常量 8

2.1.3 实型常量 9

2.1.4 字符常量 9

2.1.5 字符串类型 10

2.2 运算符 11

2.2.1 优先级与结合规则 11

2.2.2 赋值运算与连续赋值 12

2.2.3 算术运算 12

2.2.4 关系运算 14

2.2.5 逻辑运算、连续比较和逻辑优化 14

2.2.6 位运算 15

2.2.7 条件运算 16

2.2.8 复合赋值运算 17

2.2.9 逗号运算 17

2.2.10 其他运算sizeof 18

2.2.11 类型转换与类型转换规则 18

2.3 输入/输出函数 21

2.3.1 格式化输出函数printf 21

2.3.2 格式化输入函数scanf 23

2.3.3 字符输入/输出函数 25

习题 26

第3章 控制结构 29

3.1 程序结构框图 29

3.1.1 自然语言描述 29

3.1.2 流程图 30

3.1.3 N-S图 31

3.1.4 结构化程序设计 31

3.1.5 复合语句 32

3.2 二分支结构 32

3.2.1 二分支结构选择语句 33

3.2.2 不平衡if结构 35

3.2.3 if语句的嵌套 36

3.3 多分支结构 40

3.4 循环结构 44

3.4.1 for循环 44

3.4.2 while语句 47

3.4.3 do~while语句 48

3.4.4 循环嵌套 50

3.5 break与continue语句 52

3.5.1 break语句 52

3.5.2 continue语句 53

3.5.3 goto语句 54

习题 55

第4章 函数 60

4.1 函数调用过程 60

4.2 函数的定义 61

4.2.1 函数定义的一般形式 61

4.2.2 函数定义中的要点说明 61

4.2.3 函数的声明 65

4.3 递归函数 66

4.3.1 递归概念 66

4.3.2 递归举例 67

4.4 存储类型、生存期和作用域 70

4.4.1 存储类型 70

4.4.2 生存期和作用域 71

4.5 编译预处理 77

4.5.1 文件包含 78

4.5.2 宏定义 79

4.5.3 条件编译 81

习题 83

第5章 数组 88

5.1 一维数组 88

5.1.1 一维数组的定义与初始化 88

5.1.2 一维数组的引用 90

5.1.3 字符型数组与字符串 91

5.1.4 字符串操作 93

5.2 二维数组 96

5.2.1 二维数组的定义 96

5.2.2 二维数组的引用 97

5.3 多维数组 99

5.4 函数与数组 101

5.4.1 函数与一维数组 101

5.4.2 函数与二维数组 103

5.5 问题与解答 106

5.5.1 “气泡法”排序问题 106

5.5.2 二分法查找问题 108

5.5.3 Josephus(约瑟夫)问题 109

习题 110

第6章 指针 117

6.1 指针与变量 117

6.1.1 指针的基本概念 117

6.1.2 指针变量的定义与引用 118

6.1.3 指针的运算 120

6.1.4 指向指针的指针 121

6.2 指针与数组 122

6.2.1 指向数组元素的指针 122

6.2.2 指向数组的指针 130

6.2.3 指针数组 136

6.2.4 指针与字符串 140

6.3 指针与函数 143

6.3.1 指针作函数参数 143

6.3.2 返回指针值的函数 147

6.3.3 函数指针 149

6.4 问题与解答 152

6.4.1 本章重点概念的复习 152

6.4.2 “选择法”排序问题 152

6.4.3 子串定位问题 153

习题 154

第7章 结构与共用 161

7.1 结构类型 161

7.1.1 结构类型的定义、初始化与使用 161

7.1.2 结构类型数组 166

7.1.3 结构类型数据的指针 167

7.1.4 嵌套结构 171

7.1.5 用指针处理链表 172

7.2 共用类型 179

7.2.1 共用类型的定义 179

7.2.2 共用类型变量的引用 181

7.3 枚举类型 183

7.4 位域 185

7.4.1 位运算符与位运算 185

7.4.2 位域 186

7.5 自定义类型 188

习题 189

第8章 文件 199

8.1 文件概述与文件类型指针 199

8.1.1 文件概述 199

8.1.2 文件类型指针 200

8.2 文件的打开与关闭 201

8.2.1 文件的打开 201

8.2.2 文件的关闭 202

8.3 文件的读写 203

8.3.1 字符读写函数fgetc()和fputc() 203

8.3.2 字符串读写函数fgets()和fputs() 205

8.3.3 格式化读写函数fscanf()和fprintf() 207

8.3.4 数据块读写函数fread()和fwrite() 209

8.4 文件的定位 211

8.5 文件检测 213

8.6 文件的低层操作 214

习题 217

*第9章 文本与图形处理 224

9.1 文本的屏幕输出与键盘操作 224

9.1.1 文本的屏幕输出 224

9.1.2 键盘操作 230

9.1.3 综合实例程序 232

9.2 图形编程 235

9.2.1 图形模式初始化 235

9.2.2 独立图形运行程序的建立 239

9.2.3 屏幕颜色的设置和清屏函数 241

9.2.4 基本图形处理函数 243

9.2.5 图形模式下的文本输出 250

9.2.6 综合图形实例程序 253

附录1 常用字符与ASCII值对照表 256

附录2 C语言保留字一览表 258

附录3 运算符的优先级及其结合性 259

附录4 常用C库函数 260

参考文献 265

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值