C程序设计教程

C程序设计教程"

作者:姜桂洪、谷亚鹏
ISBN:9787302159131
定价:¥38
字数:千字
页数:
出版时间:2008.01.01
开本:
版次:1-1
装帧:
出版社:清华大学出版社
简介

本书采用Turbo C++ 3.0作为语言环境,系统地介绍了进行C程序设计的基本操作、算法描述、数据类型、流程控制、编程技巧等内容。语言通俗、简洁、流畅,内容论述深入浅出,例题讲解细致详尽且具有代表性,让具备一定的计算机基础知识的计算机语言初学者能够自己读明白。

全书共12章,知识体系完整,结构安排合理,内容深度适宜,并将习题分为课堂测试、课后习题和单元测试3个层次。

本书适合作为高等院校本、专科学生学习C语言的教材,也可作为计算机编程人员和相关领域的技术工作者自学与参考用书。

另外,本书还配有辅助教材《C程序设计教程习题解答与上机指导》。

前言

语言是一种描述能力强、可移植性好、硬件控制能力高、逻辑思维缜密的结构化程序设计语言。目前,许多高校将C语言选作学生学习计算机语言的启蒙语言,在“数据结构”课程中也已广泛采用C语言作为背景语言。此外,C语言还广泛应用于电子信息领域。

由于C语言牵涉的概念比较复杂、规则繁多、使用灵活、容易出错,不少初学者感到学习困难,本书以“计算机文化基础”为先导课程,依据多年的实际教学经验,并参考借鉴了多种同类教材的优点,对该书的知识结构体系及内容讲述的逻辑顺序进行了精心的设计和安排。力求达到结构顺序合理,内容深度适宜。采用通俗易懂、简洁流畅的语言,论述深入浅出,例题典型全面且讲解细致详尽。

本书采用Turbo C++ 3.0作为语言环境,所有例题均在Turbo C++ 3.0语言环境下上机调试并通过。适合作为高等院校本科、专科学生的学习C语言的课程教材,也可以作为自学和参考用书。

全书共分12章,主要内容如下:

* C语言运行环境的基本操作、C语言的特点和学习C语言必备的基础知识。 

* C 语言的基本数据类型、运算符、表达式及各种数值类型数据间的转换和     运算。

* 算法概念、库函数的使用、数据输入输出。

* 选择结构的算法描述、关系运算、逻辑运算、if语句和switch语句的应用。

* 循环结构的算法描述和while、do... while、for等循环语句及其循环嵌套的    应用。

* 数组的概念、定义、引用、初始化及字符数组的输入输出。

* 函数的定义、返回值、嵌套调用、数组作函数参数、变量的存储类别。

* 宏定义、文件包含、条件编译等预处理命令。      

* 指针的概念、指针变量的定义和使用、指针和数组、指针与字符串、指针和函数及指针数组的应用。

* 结构体、链表、共用体和枚举类型。 

* C文件的概念、分类及打开、关闭、读写、定位与随机读写等基本操作。

* C程序的常用调试方法和步骤、C程序的常见错误分析。

本书习题类型丰富,创新性地将习题按照学习C语言的认知规律分为3个层次。

* 课堂测试,有针对性地在介绍主要内容的小节后面配有课堂测试练习,检测读者是否理解了本小节的基本内容。

* 课后习题,每章配有类型丰富、题材典型的习题,帮助读者巩固所学知识。

* 单元测试,将全书分为3个单元,每单元后面配有1套测试练习题,用于检测读者对本部分内容掌握的情况。

另外,本书还配有辅助教材《C程序设计教程习题解答与上机指导》。

本书主要由姜桂洪、谷亚鹏、王军、黄宝香等编写,全书由姜桂洪统稿。刘秋香、邢雪宁、潘金凤、孙小敏、崔国伟等老师,还有许多同学曾对本书编写给予大力支持和帮助,在此由衷地表示谢意。

由于编撰时间仓促,加之水平有限,书中难免有不妥之处,恳请读者批评指正。

编  者  

2007年5月

VI

C程序设计教程

III

错误!文档中没有指定样式的文字。

目录

第1章  C语言概述 1

1.1  C语言的发展历程 1

1.2  数据在计算机内的存储形式和表示方法 2

1.2.1  内存的组织形式 2

1.2.2  数据的二进制表示方法 3

1.2.3  八进制数 5

1.2.4  十六进制数 6

1.2.5  原码、反码和补码 8

1.3  利用计算机处理问题的基本过程 10

1.4  最简单的C程序的构成 11

1.4.1  C语言的特点 11

1.4.2  C语言中的字符集 12

1.4.3  C程序的构成 14

1.5  C语言的运行环境和上机步骤 18

1.5.1  C语言的运行环境 18

1.5.2  C程序的上机步骤 20

1.6  小结 24

习题 24

第2章  数据类型、运算符和表达式 26

2.1  C的数据类型 26

2.2  常量和变量 27

2.2.1  常量和符号常量 27

2.2.2  变量 27

2.3  整型数据 28

2.3.1  整型常量的表示方法 28

2.3.2  整型变量 29

2.3.3  整型常量的类型 33

2.4  实型数据 33

2.4.1  实型常量的表示方法 33

2.4.2  实型变量 34

2.4.3  实型常量的类型 35

2.5  字符型数据 36

2.5.1  字符型常量 36

2.5.2  字符型变量 38

2.5.3  字符串常量 40

2.6  变量初始化和变量赋初值 41

2.7  算术运算符和算术表达式 42

2.7.1  C语言运算符简介 42

2.7.2  基本算术运算符和算术表达式 43

2.7.3  自增、自减运算符 44

2.7.4  有关算术表达式使用中的问题说明 45

2.8  各种数值类型数据间的转换和运算 47

2.8.1  隐式转换 47

2.8.2  强制类型转换 48

2.9  赋值运算符和赋值表达式 48

2.10  位运算 53

2.10.1  位运算符及其功能 53

2.10.2  位运算举例 57

2.11  逗号运算符和逗号表达式 59

2.12  小结 60

习题 60

第3章  算法和顺序结构程序设计 64

3.1  算法概念和算法的表示方法 64

3.1.1  算法概念 64

3.1.2  算法的表示方法 66

3.2  C语句概述 70

3.3  数据的输入输出和库函数的使用 73

3.3.1  数据的输入输出概念 73

3.3.2  库函数的使用 73

3.4  putchar函数和getchar函数 76

3.4.1  putchar函数 76

3.4.2  getchar函数 76

3.5  数据的格式输出printf函数 77

3.6  数据的格式输入scanf函数 84

3.7  结构化程序设计的一般步骤 88

3.8  顺序结构程序设计举例 91

3.9  小结 93

习题 93

第4章  选择结构程序设计 96

4.1  选择结构能够解决的问题及算法表示 96

4.2  关系运算符和关系表达式 99

4.2.1  关系运算符及其优先次序 99

4.2.2  关系表达式 100

4.3  逻辑运算符和逻辑表达式 101

4.3.1  逻辑运算符及其优先次序 101

4.3.2  逻辑表达式 102

4.4  if语句 104

4.4.1  if语句的基本形式 104

4.4.2  if语句嵌套 107

4.5  条件运算符和条件表达式 111

4.6  switch语句 113

4.7  选择结构程序设计举例 115

4.8  小结 116

习题 117

第5章  循环结构程序设计 121

5.1  循环结构能够解决的问题及算法表示 121

5.2  while语句 124

5.3  do...while语句 126

5.4  for语句 129

5.5  循环嵌套 133

5.6  break语句和continue语句 135

5.7  循环结构程序举例 137

5.8  小结 139

习题 140

单元自测练习(1) 144

第6章  数组 147

6.1  数组的概念及数组在内存中的存储形式 147

6.1.1  数组概念 147

6.1.2  数组在内存中的存储形式 148

6.2  一维数组的定义和引用 148

6.2.1  一维数组的定义 148

6.2.2  一维数组元素的引用 149

6.2.3  一维数组的初始化 150

6.2.4  一维数组程序举例 151

6.3  二维数组的定义和引用 153

6.3.1  二维数组的定义 153

6.3.2  二维数组元素的引用 154

6.3.3  二维数组的初始化 155

6.3.4  二维数组程序举例 157

6.4  字符数组的定义和引用 158

6.4.1  字符数组的定义 159

6.4.2  字符数组的初始化 159

6.4.3  字符数组元素的引用 160

6.4.4  字符串及其结束标志 161

6.4.5  字符数组的输入输出 163

6.4.6  常用字符串处理函数 165

6.4.7  字符数组应用举例 169

6.5  小结 171

习题 172

第7章  函数 175

7.1  C程序的基本结构 175

7.2  函数的定义和函数的返回值 178

7.2.1  函数定义的一般形式 178

7.2.2  函数参数 181

7.2.3  函数的返回值 183

7.2.4  函数的调用 184

7.3  函数的嵌套调用和递归调用 187

7.3.1  函数的嵌套调用 187

7.3.2  函数的递归调用 189

7.4  数组作函数参数 192

7.4.1  数组元素作函数参数 192

7.4.2  一维数组名作函数参数 194

7.4.3  多维数组名作函数参数 200

7.5  局部变量和全局变量 202

7.5.1  局部变量 202

7.5.2  全局变量 204

7.6  变量的存储类别 208

7.6.1  动态存储和静态存储 208

7.6.2  auto变量 208

7.6.3  利用static声明局部变量 209

7.6.4  register变量 210

7.6.5  利用extern声明外部变量 211

7.6.6  利用static声明全局变量 213

7.7  内部函数和外部函数 214

7.7.1  内部函数 214

7.7.2  外部函数 215

7.8  小结 215

习题 217

第8章  预处理命令 219

8.1  宏定义 220

8.1.1  不带参数的宏定义 220

8.1.2  带参数的宏定义 223

8.2  文件包含 229

8.3  条件编译 232

8.4  小结 234

习题 235

单元自测练习(2) 237

第9章  指针 241

9.1  有关指针的基本概念 241

9.2  指针变量的定义和使用 244

9.2.1  指针变量的定义 244

9.2.2  指针变量的引用 245

9.2.3  指针变量作函数参数 248

9.2.4  多级指针 250

9.3  数组和指针 251

9.3.1  数组元素与指针变量 252

9.3.2  数组名作函数参数 256

9.3.3  多维数组与指针 263

9.4  字符串与指针 272

9.4.1  字符数组、字符串和字符指针的关系 272

9.4.2  字符串指针作函数参数 274

9.4.3  字符串指针和字符数组的区别 276

9.5  函数和指针 277

9.5.1  指向函数的指针变量 277

9.5.2  用函数指针变量调用函数 278

9.5.3  用指向函数的指针变量作函数参数 279

9.5.4  返回指针值的函数 281

9.6  指针数组及应用 282

9.6.1  指针数组 282

9.6.2  指针数组作main函数的参数 285

9.7  void指针类型 287

9.8  小结 288

习题 290

第10章  结构体、共用体和枚举类型 294

10.1  结构体类型数据的定义和使用 294

10.1.1  结构体类型的定义 294

10.1.2  结构体变量的定义 296

10.1.3  结构体变量的引用 297

10.1.4  结构体变量的初始化 299

10.1.5  结构体数组 300

10.1.6  位段 304

10.2  结构体类型数据与指针 307

10.2.1  指向结构体变量的指针 307

10.2.2  指向结构体数组的指针 309

10.2.3  用指向结构体变量的指针作函数参数 311

10.3  链表 314

10.3.1  链表基本结构与定义 314

10.3.2  处理动态链表所需的函数 317

10.3.3  对链表的基本操作 318

10.3.4  对链表的综合操作 323

10.4  共用体 325

10.4.1  共用体概念 325

10.4.2  共用体变量的引用 327

10.4.3  共用体类型数据的特点 328

10.5  枚举类型 329

10.5.1  枚举类型的定义 329

10.5.2  枚举类型数据的特点 330

10.6  利用typedef定义类型 332

10.7  小结 334

习题 334

第11章  文件 338

11.1  C文件概述 338

11.2  文件的打开和关闭 341

11.2.1  文件的打开 341

11.2.2  文件的关闭 343

11.3  文件的读写 344

11.3.1  单个字符的读写函数 344

11.3.2  fread 函数和fwrite函数 348

11.3.3  fprintf函数和 fscanf函数 351

11.3.4  其他常用读写函数 351

11.4  文件的定位与随机读写 354

11.5  出错的检测 356

11.6  小结 357

习题 358

第12章  C程序调试和常见错误 361

12.1  程序调试 361

12.2  C程序常见错误分析 364

12.3  小结 375

单元自测练习(3) 376

附录A  常用字符与ASCII码对照表 380

附录B  C运算符的优先级和结合性 382

附录C  常用库函数 384

附录D  C语言中的关键字及其用途 389

附录E  课堂测试题答案 390

X

C程序设计教程

IX

作者简介

编辑推荐

作者寄语

电子资料

www.luweidong.cn

下一个