《C程序设计》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:田淑清等编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:1998
  • ISBN:7505347322
  • 页数:304 页
图书介绍:

第1章 C程序设计的初步知识 1

1.1 简单C程序的组成和格式 1

1.2 十进制整型数和实型数 2

1.2.1 常量 2

1.2.2 十进制整型常量 3

1.2.3 浮点常量 3

1.2.4 用定义一个符号名的方法来代表一个常量 3

1.3 标识符 4

1.3.1 关键字 4

1.3.2 预定义标识符 4

1.3.3 用户标识符 4

1.4 整型变量和实型变量 5

1.4.1 变量 5

1.4.2 整型变量 5

1.4.3 浮点型变量 5

1.4.4 给变量置初值 6

1.4.5 定义不可变的变量 7

1.5 可进行算术运算的表达式 7

1.5.1 基本的算术运算符 7

1.5.2 运算符的优先级与结合性和算术表达式 8

1.5.3 强制类型转换表达式 9

1.6 赋值表达式 9

1.6.1 赋值运算符和赋值表达式 9

1.6.2 复合的赋值表达式 10

1.6.3 赋值运算中的类型转换 11

1.7 自加、自减运算符和逗号运算符 11

1.7.1 自加运算符(++)和自减运算符(--) 11

1.7.2 逗号运算符和逗号表达式 12

习题 12

第2章 简单的C语句及其顺序程序结构 15

2.1 赋值语句 15

2.2 整型数和实型数的简单输入和输出语句 16

2.2.1 调用printf函数输出数据到终端 16

2.2.2 调用scanf函数从终端键盘输入数据 17

2.3 复合语句和空语句 19

2.3.1 复合语句 19

2.3.2 空语句 19

习题 20

第3章 分支结构 22

3.1 关系运算和逻辑运算 22

3.1.1 C语言中的逻辑值 22

3.1.2 关系运算符和关系表达式 22

3.1.3 逻辑运算符和逻辑表达式 24

3.2 用if语句构成的分支结构 25

3.2.1 if语句 25

3.2.2 嵌套的if语句 29

3.3 由条件表达式构成的分支结构 33

3.4 由switch语句和break语句构成的分支结构 34

3.4.1 switch语句 34

3.4.2 switch语句的执行过程 35

3.4.3 在switch语句体中使用break语句 35

习题 37

第4章 循环结构 40

4.1 用for语句构成的循环结构 40

4.1.1 for循环的一般形式 40

4.1.2 for循环的执行过程 40

4.1.3 有关.for语句的说明 41

4.2 用while语句构成的循环结构 45

4.2.1 while循环的一般形式 45

4.2.2 while循环的执行过程 46

4.3 用do-while语句构成的循环结构 47

4.3.1 do-while循环的一般形式 47

4.3.2 do-while循环的执行过程 48

4.4 循环结构的嵌套 49

4.5 几种循环结构的比较 51

4.6 break和continue语句在循环体中的作用 52

4.6.1 break语句 52

4.6.2 continue语句 52

4.7 语句标号和goto语句 53

4.7.1 语句标号 53

4.7.2 goto语句 53

4.8 程序举例 54

习题 59

第5章 函数的初步知识 61

5.1 库函数 61

5.2 函数的定义和返回值 62

5.2.1 函数定义的语法 62

5.2.2 函数的返回值 63

5.3 函数的调用 64

5.3.1 函数的两种调用方式 64

5.3.2 函数调用时的语法要求 64

5.4 函数原型的说明 65

5.4.1 函数原型的说明语句 65

5.4.2 函数原型说明语句的位置 66

5.5 调用函数和被调用函数之间的数据传递 67

5.6 程序举例 69

习题 73

第6章 算法和结构化程序设计 76

6.1 程序和程序设计 76

6.1.1 程序 76

6.1.2 程序设计 76

6.2 算法 77

6.3 结构化程序设计和模块化结构 78

6.3.1 结构化程序 78

6.3.2 模块化结构 80

6.4 怎样评价一个程序 80

习题 82

第7章 字符数据和字符数据处理 83

7.1 字符常量 83

7.1.1 常规字符常量 83

7.1.2 转义字符常量 83

7.1.3 可对字符量进行的运算 84

7.2 字符变量 84

7.3 字符的输入和输出 84

7.3.1 调用printf和scanf函数 84

7.3.2 调用putchar和getchar函数 85

7.3.3 调用getche和putche函数 85

7.3.4 调用getch和putch函数 86

7.4 程序举例 86

习题 90

第8章 地址和指针 92

8.1 什么是地址?什么是指针? 92

8.2 指针变量的定义和指针变量的基类型 93

8.3 给指针变量赋值 93

8.3.1 使指针指向一个对象 93

8.3.2 给指针变量赋“空”值 94

8.4 对指针变量的操作 94

8.4.1 通过指针或地址来引用一个存储单元 94

8.4.2 移动指针 96

8.4.3 指针比较 98

8.5 函数之间地址值的传递 98

8.5.1 地址或指针变量作为实参 98

8.5.2 在被调用函数中直接改变调用函数中的变量的值 100

8.5.3 函数返回地址值 101

习题 101

第9章 一维数组 103

9.1 一维数组的定义和一维数组元素的引用 103

9.1.1 一维数组的定义 103

9.1.2 一维数组元素的引用 104

9.1.3 一维数组的初始化 105

9.1.4 通过赋初值定义数组的大小 105

9.2 一维数组的应用举例(一) 105

9.3 一维数组和指针 110

9.3.1 一维数组和数组元素的地址 110

9.3.2 通过数组的首地址引用数组元素 110

9.3.3 通过指针来引用一维数组元素 111

9.3.4 用指针带下标的形式引用一维数组元素 112

9.4 一维数组名或数组元素作实参 112

9.4.1 数组元素作实参 112

9.4.2 数组名作实参 112

9.4.3 数组元素地址作为实参 114

9.5 一维数组应用举例(二) 115

习题 127

第10章 二维数组 129

10.1 二维数组的定义和二维数组元素的引用 129

10.1.1 二维数组的定义 129

10.1.2 二维数组元素的引用 130

10.1.3 二维数组的初始化 130

10.1.4 通过赋初值定义二维数组的大小 131

10.2 二维数组的应用举例(一) 132

10.3 二维数组和指针 134

10.3.1 二维数组和数组元素的地址 134

10.3.2 通过地址来引用二维数组元素 135

10.3.3 通过建立指针数组来引用二维数组元素 136

10.3.4 通过建立行指针来引用二维数组元素 137

10.4 通过建立指针数组和一维数组来构造二维数组 137

10.5 二维数组名和指针数组作为实参 140

10.5.1 二维数组名作为实参 140

10.5.2 指针数组作为实参 141

10.6 二维数组应用举例(二) 141

习题 146

第11章 字符串 149

11.1 用一维字符数组来存放字符串 149

11.1.1 通过赋初值的方式给一维字符数组赋字符串 150

11.1.2 在C程序执行过程中给一维字符数组赋字符串 151

11.2 使用指针指向一个字符串 151

11.2.1 通过赋初值的方式使指针指向字符串 151

11.2.2 通过赋值运算使指针指向字符串 152

11.2.3 用字符数组作为字符串和用指针指向的字符串之间的区别 152

11.3 字符串的输入和输出 153

11.3.1 输入和输出字符串时的必要条件 153

11.3.2 逐个字符输入和输出 153

11.3.3 用格式说明符“?”进行整串输入和输出 154

11.3.4 调用gets和puts函数在终端按行输入输出字符 155

11.4 字符串数组 156

11.5 用于字符串处理的函数 158

11.6 程序举例 162

习题 167

第12章 对函数的进一步讨论 170

12.1 传给main()函数的参数 170

12.2 通过实参向函数传递函数名或指向函数的指针 172

12.3 函数的递归调用 174

习题 181

第13章 C语言中用户标识符的作用域和存储类 183

13.1 内部变量、外部变量和存储分类 183

13.1.1 用户标识符的作用域 183

13.1.2 内部变量、外部变量和存储分类 183

13.2 内部变量及其作用域和生存期 184

13.2.1 auto变量 184

13.2.2 register变量 185

13.2.3 静态存储类的内部变量 186

13.3 外部变量及其作用域和生存期 187

13.3.1 外部变量的作用域和生存期 187

13.3.2 在同一编译单位内使用extern说明符 188

13.3.3 在不同编译单位内使用extern说明符 189

13.3.4 静态外部变量 190

13.4 函数的存储分类 190

13.4.1 用extern说明函数 190

13.4.2 用static说明函数 191

13.5 在Turbo C集成环境下连接多个编译单位的方法 191

习题 193

第14章 编译预处理 195

14.1 宏替换 195

14.1.1 不带参数的宏定义 195

14.1.2 带参数的宏定义 196

14.1.3 终止宏定义 198

14.2 文件包含 198

14.3 条件编译 199

14.4 #line行 200

习题 201

第15章 动态存储分配 203

15.1 malloc函数和free函数 203

15.2 calloc函数 205

15.3 realloc函数 206

习题 207

第16章 结构体类型和用户定义类型 209

16.1 用typedef说明一种新类型名 209

16.2 结构体类型 210

16.3 结构体类型的说明 211

16.4 结构体类型的变量、数组和指针的定义 212

16.5 给结构体变量、数组赋初值 214

16.6 引用结构体类型变量中的数据 215

16.7 通过结构体组成较复杂的存储结构 218

16.8 函数之间结构体变量的数据传递 220

16.8.1 向函数传递结构体变量的成员 220

16.8.2 向函数传递结构体变量 220

16.8.3 传递结构体的地址 221

16.8.4 函数值为结构体类型 222

16.8.5 函数的返回值可以是指向结构体变量的指针类型 222

16.9 利用结构体变量构成链表 223

16.9.1 结构体中含有可以指向本结构体的指针成员 223

16.9.2 动态链表的概念 224

16.9.3 单向链表 225

16.9.4 单向环形链表 231

16.9.5 双向链表 233

习题 236

第17章 C语言中的整型数和整型变量 239

17.1 十进制数和二、八、十六进制数之间的转换 239

17.1.1 十进制数和二进制数之间的转换 239

17.1.2 十进制数和八进制数之间的转换 239

17.1.3 十进制数和十六进制数之间的转换 240

17.1.4 二进制数与八进制数、十六进制数间的转换 241

17.2 整数在内存中的存储形式 242

17.2.1 正整数 242

17.2.2 负整数 242

17.2.3 无符号整数 242

17.3 C语言中的八进制数和十六进制数 243

17.4 C语言中的整数类型 243

17.5 C语言中的整数类型之间的转换 244

习题 244

第18章 共用体、位段结构和枚举类型 246

18.1 共用体 246

18.1.1 共用体类型的说明和变量定义 246

18.1.2 共用体变量的引用 247

18.1.3 共用体应用举例 248

18.2 位段结构 250

18.3 枚举类型 253

习题 255

第19章 位运算 257

19.1 位运算符和位运算 257

19.1.1 位运算符 257

19.1.2 位运算符的运算功能 257

19.2 位运算的简单应用 260

习题 262

第20章 在终端上按格式进行数据的输入和输出 264

20.1 调用printf()在终端上按格式进行数据的输出 264

20.1.1 printf()函数的一般调用形式 264

20.1.2 printf()函数中常用的格式说明 264

20.1.3 调用printf()函数时的注意事项 268

20.2 调用scanf()在终端上按格式进行数据的输入 269

20.2.1 scanf()函数的一般调用形式 269

20.2.2 scanf()函数中常用的格式说明 269

20.2.3 通过scanf函数从键盘输入数据 270

习题 273

第21章 文件 276

21.1 文件的概念 276

21.2 文件指针 277

21.3 打开文件 277

21.4 关闭文件 279

21.5 getc(fgetc)函数和putc(fputc)函数 279

21.6 判文件结束函数feof 281

21.7 fscanf函数和fprintf函数 282

21.8 fgets函数和fputs函数 285

21.9 fread函数和fwrite函数 285

21.10 文件定位函数 287

21.10.1 fseek函数 287

21.10.2 ftell函数 289

21.10.3 rewind函数 289

习题 289

附录 291

附录A C语言的关键字 291

附录B 双目算术运算中两边运算量类型转换规律 291

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

附录D 常用字符与ASCⅡ代码对照表 292

附录E Turbo C 2.0常用库函数 293

附录F 简单的上机操作和程序的调试 297

参考文献 304