C语言程序设计

C语言程序设计"

作者:王丽君、赵骥、张继生等
ISBN:9787302189930
定价:¥25
字数:千字
页数:
出版时间:2009.03.01
开本:
版次:1-2
装帧:
出版社:清华大学出版社
简介

本书详实地讲解了C语言的基本概念、原理和使用方法,力求给读者打下一个扎实的程序设计基础。本书主要内容包括C语言概述、数据描述与基本操作、C语言的控制结构、数组、函数、指针、构造数据类型、编译预处理和文件等。本教材采用循序渐进、深入浅出、通俗易懂的讲解方法,本着理论与实际相结合的原则,通过大量经典实例对C语言知识进行了重点讲解,使程序设计语言的初学者能够掌握利用C语言进行结构化程序设计的技术和方法。

本书以C编程基本技能训练为主线,突出基本技能的掌握,内容完整,阐述准确,层次清楚。通过本书的学习,将使学生牢固掌握程序设计的基本技能,以适应信息时代对大学生科学素质的要求。

本书适用于高等学校各专业程序设计基础教学,特别适合应用型本科、高职院校的计算机及非计算机相关专业的学生使用,同时也是计算机等级考试备考的一本实用辅导书。

本书配套的电子课件可在清华大学出版社网站(http://www.tup.com.cn)下载。

前言

C语言具有表达能力强、概念和功能丰富、目标程序质量高、可移植性好、使用灵活方便等特点,既具有高级语言的优点,又具有低级语言的某些特点,能够有效地用来编制各种系统软件和应用软件,是当今最为流行的一种计算机语言。因此,国内大部分高等院校都把C语言作为计算机和非计算机相关专业的一门程序设计语言课程。

C语言涉及的概念多、规则复杂、容易出错,初学者往往感觉困难。本教材在详细阐述程序设计基本概念、原理和方法的基础上,采用循序渐进、深入浅出、通俗易懂的讲解方法,本着理论与实际相结合的原则,通过大量经典实例重点讲解了C语言的概念、规则和使用方法,使程序设计语言的初学者能够在建立正确程序设计理念的前提下,掌握利用C语言进行结构化程序设计的技术和方法。全书共9章,主要内容包括:第1章 C语言概述、第2章 数据描述与基本操作、第3章 C语言的控制结构、第4章 数组、第5章 函数、第6章 指针、第7章 构造数据类型、第8章 编译预处理、第9章 文件。书中对数组、函数、指针、变量的存储类型、结构体和共用体、文件等重点和难点的内容进行了深入讲解与分析。“C语言程序设计”作为程序设计的入门课程,应重视对程序设计和C语言基本概念、原理和规则的讲解,力求给读者打下一个扎实的基础,培养读者良好的编程风格,提高读者进一步学习新程序设计语言的能力。

本教材可作为高等学校各专业程序设计基础教学的教材,特别适合作为应用型本科、高职院校的计算机及非计算机专业的学生使用,同时也可作为编程人员和C语言自学者的参考用书。

本教材第1章、第2章和第3章由白秋颖编写;第4章、第5章和第8章由张继生编写;第6章和第7章由赵骥编写;第9章由王丽君编写。在编写的过程中,田莹、刘尚懿、孟丹及艾青老师也做了大量工作,在此一并表示感谢!最后还要感谢为本教材付出心血的编辑、审稿人员等各位朋友!

为了帮助读者学习,本教材每章设有小结和习题,同时还有配套的《C语言程序设计上机指导与习题解答》的实验教材,其重点介绍了Visual C++ 6.0编译系统的使用方法,使学生在实践学习过程中能迅速掌握C语言程序的编辑、编译、调试和运行方法。

由于编者水平有限,殷切希望广大读者对书中存在的缺点和错误给予批评指正。

作  者   

2008年10月

IV

计算机应用技术基础11

109

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

目录

第1章  C语言概述 1

1.1  C语言的发展与特点 1

1.1.1  C语言的发展 1

1.1.2  C语言的特色 2

1.2  程序设计基础 2

1.2.1  程序设计 3

1.2.2  算法 3

1.2.3  数据结构 7

1.3  C语言程序的结构 7

1.3.1  C程序结构 7

1.3.2  C程序元素 9

1.4  C语言程序的开发与环境 10

1.4.1  C语言程序的开发 10

1.4.2  C语言程序的开发环境 12

本章小结 14

习题1 15

第2章  数据描述与基本操作 16

2.1  C语言的数据类型 16

2.2  常量与变量 17

2.2.1  常量和变量 17

2.2.2  整型数据 19

2.2.3  浮点型数据 22

2.2.4  字符型数据 23

2.2.5  变量的初始化 25

2.3  运算符与表达式 26

2.3.1  算术运算符和表达式 26

2.3.2  赋值运算符和赋值表达式 27

2.3.3  关系运算符与关系表达式 30

2.3.4  逻辑运算符与逻辑表达式 31

2.3.5  逗号运算符和逗号表达式 32

2.4  位运算 32

2.4.1  按位与运算 33

2.4.2  按位或运算 33

2.4.3  按位异或运算 34

2.4.4  求反运算 34

2.4.5  左移运算 34

2.4.6  右移运算 35

* 2.4.7  位域(位段) 36

2.5  输入和输出函数 38

2.5.1  字符型数据的输入和输出 38

2.5.2  格式输入与输出函数 40

本章小结 45

习题2 46

第3章  C语言的控制结构 48

3.1  结构化程序设计 48

3.1.1  结构化程序设计的特点 48

3.1.2  结构化程序设计的方法 49

3.1.3  结构化程序设计的步骤 49

3.2  顺序结构程序设计 50

3.2.1  顺序结构程序特点 50

3.2.2  C语句详解 51

3.3  选择结构程序设计 56

3.3.1  if语句及实现选择结构 56

3.3.2  switch语句及实现多分支选择结构 62

3.3.3  条件运算符和表达式 65

3.4  循环结构程序设计 66

3.4.1  while语句 66

3.4.2  do-while语句 68

3.4.3  for语句 69

3.4.4  多重循环 72

3.4.5  几种循环的比较 73

3.4.6  break语句 73

3.4.7  continue语句 74

3.4.8  程序举例 74

本章小结 78

习题3 78

第4章  数组 80

4.1  一维数组的定义和引用 80

4.1.1  一维数组的定义 80

4.1.2  一维数组的初始化 81

4.1.3  一维数组元素的引用 82

4.1.4  一维数组的应用举例 82

4.2  二维数组的定义和引用 87

4.2.1  二维数组的定义 88

4.2.2  二维数组的初始化 89

4.2.3  二维数组元素的引用 90

4.2.4  二维数组元素应用举例 90

4.3  字符数组的定义和引用 93

4.3.1  字符数组的定义 93

4.3.2  字符数组的初始化 94

4.3.3  字符数组的引用 94

4.3.4  字符串与字符数组 95

4.3.5  字符数组的输入与输出 97

4.3.6  字符串处理函数 100

4.3.7  字符数组应用举例 103

本章小结 110

习题4 110

第5章  函数 112

5.1  模块化程序设计与函数 112

5.1.1  模块化程序设计原则 112

5.1.2  模块与函数 113

5.1.3  C源程序的结构 113

5.2  函数定义 114

5.2.1  标准库函数 114

5.2.2  函数定义 115

5.2.3  函数参数 117

5.3  函数调用与返回值 118

5.3.1  函数调用 118

5.3.2  函数的返回值 121

5.3.3  函数的声明 123

5.4  函数的递归调用 123

5.5  数组作为函数参数 125

5.5.1  数组元素做实参 126

5.5.2  一维数组名做函数参数 126

5.5.3  用多维数组名做函数参数 129

5.6  变量的作用域与存储属性 131

5.6.1  局部变量与全局变量 131

5.6.2  变量的存储属性 134

5.6.3  局部变量的存储类型 135

5.6.4  全局变量的存储类型 137

5.7  内部函数和外部函数 139

5.7.1  内部函数 139

5.7.2  外部函数 139

本章小结 140

习题5 140

第6章  指针 141

6.1  指针的概念 141

6.2  指针变量的定义 142

6.3  指针的运算 143

6.3.1  指针变量的赋值运算 143

6.3.2  指针变量的算术运算 145

6.4  指针与数组 148

6.4.1  指向一维数组的指针 148

6.4.2  指向二维数组的指针 151

6.4.3  指向字符串的指针 154

6.5  指针与函数 156

6.5.1  指针变量作为函数参数 156

6.5.2  数组指针作为函数参数 159

6.5.3  指针作为函数的返回值 164

6.5.4  指向函数的指针变量 165

6.6  指针数组与指向指针的指针 167

6.6.1  指向指针的指针 169

6.6.2  main函数的参数 170

本章小结 171

习题6 172

第7章  构造数据类型 173

7.1  结构体数据类型 173

7.1.1  结构体类型的定义 173

7.1.2  结构体变量的定义 174

7.1.3  结构体变量的初始化 176

7.1.4  结构体变量成员的引用 177

7.2  结构体与数组 179

7.2.1  结构体数组的定义 179

7.2.2  结构体数组的初始化 180

7.2.3  结构体数组的引用 181

7.3  结构体与指针 182

7.3.1  指向结构体变量的指针 182

7.3.2  指向结构体数组的指针 184

7.4  结构体与函数 185

7.4.1  结构体指针变量作为函数参数 185

7.4.2  结构体指针变量作为函数返回值 186

7.5  结构体与链表 187

7.5.1  动态存储分配 187

7.5.2  链表的操作 188

7.6  共用体数据类型 194

7.7  枚举类型 196

7.8  类型定义符typedef 198

本章小结 199

习题7 200

第8章  编译预处理 201

8.1  宏定义 #define 201

8.1.1  不带参数的宏定义 201

8.1.2  带参数的宏定义 204

8.2  文件包含 #include 207

8.3  条件编译 208

本章小结 209

习题8 209

第9章  文件 210

9.1  C文件概述 210

9.1.1  C文件的分类 210

9.1.2  文件指针 212

9.2  文件的打开与关闭 212

9.2.1  文件的打开 213

9.2.2  文件的关闭 214

9.3  文件的读写 215

9.3.1  字符读写函数 215

9.3.2  字符串读写函数 218

9.3.3  数据块读写函数 220

9.3.4  格式化读写函数 222

9.4  文件定位函数 222

9.4.1  重置文件指针函数 222

9.4.2  设置指针位置函数 223

9.4.3  取指针位置函数 223

9.5  文件出错检测函数 224

9.5.1  读写出错检测函数 224

9.5.2  清除文件出错标志函数 224

9.5.3  清除文件函数 225

本章小结 226

习题9 226

附录 227

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

附录B  关键字 228

附录C  运算符的优先级与结合性 228

附录D  常用的ANSI C标准库函数 229

参考文献 235

X

C语言程序设计

IX

作者简介

编辑推荐

作者寄语

电子资料

www.luweidong.cn

下一个