《C语言完全手册 基本概念、函数参考、编程实例与试题集锦》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:杨峰编著
  • 出 版 社:北京:科学出版社
  • 出版年份:2008
  • ISBN:7030225245
  • 页数:435 页
图书介绍:

第1章 概述 2

1.1C语言的产生和发展 2

1.2C语言的特点 3

1.3C程序的开发平台 3

1.3.1下载TurboC开发环境 4

1.3.2运行TurboC开发环境 4

1.3.3环境配置 5

1.3.4程序的编写 7

1.3.5源程序的编译 8

1.3.6程序的链接 8

1.3.7程序的运行 9

1.3.8保存源文件退出TurboC环境 9

1.4解析最简单的C程序 10

1.5本章小结与要点回顾 11

第2章 数据类型和运算符 13

2.1常量与变量 13

2.2C语言中的关键字 15

2.3C语言的基本数据类型 16

2.3.1整型 17

2.3.2浮点型 20

2.3.3字符型 22

2.3.4枚举类型 24

2.4运算符 26

2.4.1算术运算符 26

2.4.2关系运算符 28

2.4.3逻辑运算符 29

2.4.4条件运算符 31

2.4.5赋值运算符 32

2.4.6逗号运算符 32

2.4.7求字节数运算符 34

2.5本章小结与要点回顾 34

第3章 基本语句 38

3.1C语句概述 38

3.2C程序的结构 39

3.2.1顺序结构 40

3.2.2分支结构 40

3.2.3循环结构 41

3.3基本的赋值语句 42

3.4分支语句和循环语句 44

3.5if语句 44

3.5.1第一种形式的if语句 44

3.5.2第二种形式的if语句 45

3.5.3第三种形式的if语句 45

3.5.4三种if语句的程序举例 46

3.5.5有关if的一些说明 48

3.5.6if语句的嵌套 48

3.6switch语句 51

3.6.1switch语句的一般形式 52

3.6.2带有break语句的switch语句 53

3.6.3有关switch语句的一些说明 53

3.7for语句 54

3.7.1for语句的一般形式 54

3.7.2有关for语句的一些说明 55

3.7.3for语句程序举例 56

3.8while语句 57

3.9do-while语句 58

3.10goto语句 60

3.11循环的嵌套 61

3.12break语句 62

3.13continue语句 62

3.14本章程序举例 63

3.15本章小结与要点回顾 66

第4章 函数 70

4.1函数概述 70

4.2函数的定义 72

4.3函数的调用 73

4.4函数的返回值及类型 75

4.5函数的参数及传递方式 77

4.6函数的嵌套调用 78

4.7函数的递归调用 79

4.7.1求n的阶乘n! 80

4.7.2汉诺塔(Hanoi)问题 81

4.8局部变量和全局变量 83

4.8.1局部变量 84

4.8.2全局变量 85

4.9变量的存储类别 88

4.9.1动态存储变量和静态存储变量 88

4.9.2auto变量 89

4.9.3用static声明的局部变量 89

4.9.4register变量 91

4.9.5同一文件中用extern声明外部变量 92

4.9.6多个文件中用extern声明外部变量 92

4.9.7用static声明外部变量 94

4.10内部函数和外部函数 95

4.10.1内部函数 95

4.10.2外部函数 95

4.11本章小结与要点回顾 96

第5章 预处理命令 99

5.1预处理命令概述 99

5.2宏定义及其分类 100

5.3不带参数的宏定义 100

5.3.1不带参数的宏定义的一般形式 100

5.3.2宏定义的嵌套 102

5.3.3宏定义的其他应用 102

5.4带参数的宏定义 103

5.4.1带参数的宏定义的一般形式 103

5.4.2带参数的宏定义与函数 104

5.4.3使用带参数的宏定义的注意事项 105

5.5文件包含 107

5.5.1文件包含命令的一般形式 107

5.5.2文件包含的特点 108

5.6条件编译 110

5.6.1条件编译命令的一般形式 110

5.6.2条件编译的应用 112

5.7本章小结与要点回顾 115

第6章 数组与指针 117

6.1数组的概念 117

6.2一维数组 117

6.2.1一维数组的定义 117

6.2.2一维数组的元素 119

6.2.3一维数组的初始化 120

6.2.4一维数组举例 121

6.3二维数组 123

6.3.1二维数组的定义 123

6.3.2二维数组的元素 124

6.3.3二维数组的初始化 125

6.3.4二维数组举例 126

6.4指针的概念 128

6.4.1内存的地址 128

6.4.2指针和指针变量 129

6.5指针型变量的定义 130

6.6指针型变量的引用 131

6.6.1指针变量引用的方法 131

6.6.2指针应用举例 133

6.7指针作为函数参数 135

6.7.1引入 135

6.7.2指针变量的函数参数 136

6.8指向数组元素的指针 139

6.9用指针引用数组元素 140

6.9.1指针对数组元素的引用 140

6.9.2几点注意事项 142

6.10数组名作为函数的参数 143

6.10.1数组名参数 143

6.10.2应用举例 146

6.11二维数组的指针 148

6.11.1二维数组的地址 148

6.11.2指向二维数组的指针 151

6.12字符数组 153

6.12.1字符数组的定义和初始化 153

6.12.2字符串与字符串的结束标志 154

6.12.3字符数组的输入输出 155

6.13字符串指针 157

6.13.1用指针指向字符串 157

6.13.2字符串指针作为函数的参数 158

6.14指针与函数 160

6.14.1指向函数的指针 160

6.14.2返回指针的函数 162

6.15指针数组和指向指针的指针 163

6.15.1指针数组 163

6.15.2指向指针的指针 165

6.16void型指针 167

6.17本章小结与要点回顾 168

第7章 结构体与联合 172

7.1结构体概述 172

7.2结构体变量的定义 173

7.2.1先定义类型后定义变量 173

7.2.2在定义结构体类型的同时定义变量 174

7.2.3直接定义结构体变量 174

7.2.4关于结构体类型的几点说明 175

7.3结构体变量的引用 176

7.3.1结构体成员的引用 176

7.3.2结构体变量的初始化 178

7.4结构体数组 179

7.4.1结构体数组的定义 179

7.4.2结构体数组的初始化 180

7.4.3结构体数组举例 180

7.5指向结构体的指针 182

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

7.5.2链表简介 185

7.6联合的概念及定义 185

7.7联合变量的引用 187

7.8使用联合的注意事项 188

7.9自定义类型 188

7.10本章小结与要点回顾 189

第8章 位运算 192

8.1概述 192

8.2位运算符 192

8.2.1按位与运算(&) 193

8.2.2按位或运算(|) 194

8.2.3按位异或运算(^) 194

8.2.4取反运算(~) 196

8.2.5左移运算(<<) 196

8.2.6右移运算(>>) 198

8.3位运算中的规则 199

8.3.1不同类型数据之间的位运算 199

8.3.2位运算赋值运算符 199

8.4位段 200

8.4.1位段的定义和位段变量的说明 200

8.4.2位段的应用举例 201

8.4.3位段的几点说明 202

8.5本章小结与要点回顾 202

第9章 C标准库介绍 206

9.1诊断:<assert.h> 207

9.2字符类别测试:<ctype.h> 207

9.3错误处理:<ermo.h> 208

9.4浮点算术运算常量:<loat.h> 208

9.5整型常量:<limits.h> 209

9.6地域环境:<locale.h> 209

9.7数学函数:<math.h> 210

9.8非局部跳转:<setjmp.h> 211

9.9信号:<signal.h> 212

9.10可变参数表:<stdarg.h> 214

9.11公共定义:<stddef.h> 214

9.12输入输出:<stdio.h> 215

9.13实用函数:<stdlib.h> 216

9.14字符串函数:<string.h> 217

9.15日期与时间函数:<time.h> 217

第10章 I/O函数 219

10.1文件概述 219

10.2clearerr复位错误标志函数 220

10.3fopen、fclose文件的打开与关闭函数 221

10.4feof检测文件结束符函数 222

10.5ferror检测流上的错误函数 223

10.6fflush清除文件缓冲区函数 224

10.7fgetc从流中读取字符函数 226

10.8fgetpos取得当前文件的句柄函数 227

10.9fgets从流中读取字符串函数 227

10.10fprintf格式化输出函数 228

10.11fputc向流中输出字符函数 230

10.12fputs向流中输出字符串函数 231

10.13fread从流中读取字符串函数 231

10.14freopen替换文件中数据流函数 232

10.15fscanf格式化输入函数 233

10.16fseek文件指针定位函数 234

10.17fsetpos定位流上的文件指针函数 235

10.18ftell返回当前文件指针位置函数 236

10.19fwrite向文件写入数据函数 237

10.20getc从流中读取字符函数 238

10.21getchar从标准输入文件中读取字符函数 239

10.22gets从标准输入文件中读取字符串函数 240

10.23perror打印系统错误信息函数 240

10.24printf产生格式化输出的函数 241

10.25putc向指定流中输出字符函数 242

10.26putchar向标准输出文件上输出字符 243

10.27puts将字符串输出到终端函数 243

10.28remove删除文件函数 244

10.29rename重命名文件函数 245

10.30rewind重置文件指针函数 245

10.31scanf格式化输入函数 246

10.32setbuf、setvbuf指定文件流的缓冲区函数 247

10.33sprintf向字符串写入格式化数据函数 248

10.34sscanf从缓冲区中读取格式化字符串函数 249

10.35tmpfile创建临时文件函数 250

10.36tmpnam创建临时文件名函数 251

10.37ungetc把字符退回到输入流函数 251

第11章 字符处理函数 253

11.1isalnum检查字符是否是字母或数字 253

11.2isalpha检查字符是否是字母 254

11.3isascii检查字符是否是ASCⅡ码 255

11.4iscntrl检查字符是否是控制字符 255

11.5isdigit检查字符是否是数字字符 256

11.6isxdigit检查字符是否是十六进制数字字符 257

11.7isgraph检查字符是否是可打印字符(不含空格) 257

11.8isprint检查字符是否是可打印字符(含空格) 258

11.9ispunct检查字符是否是标点字符 259

11.10islower检查字符是否是小写字母 259

11.11isupper检查字符是否是大写字母 260

11.12isspace检查字符是否是空格符 261

11.13toascii将字符转换为ASCⅡ码 262

11.14tolower将大写字母转换为小写字母 262

11.15toupper将小写字母转换为大写字母 263

第12章 字符串处理函数 265

12.1strcat字符串连接函数 265

12.2strncat字符串连接函数 266

12.3strcmp字符串比较函数 267

12.4strncmp字符串子串比较函数 268

12.5strcpy字符串拷贝函数 269

12.6strncpy字符串子串拷贝函数 270

12.7strlen计算字符串长度函数 271

12.8strchr字符串中字符首次匹配函数 272

12.9strrchr字符串中字符末次匹配函数 273

12.10strspn字符集匹配函数 274

12.11strcspn字符集逆匹配函数 275

12.12strpbrk字符集字符匹配函数 276

12.13strstr字符串匹配函数 277

12.14strtok字符串分隔函数 278

12.15strtod字符串转换成双精度函数 280

12.16strtol字符串转换成长整型函数 281

12.17strtoul字符串转换成无符号长整型函数 282

12.18strdup字符串新建拷贝函数 283

12.19strset字符串设定函数 284

12.20strrev字符串倒转函数 285

12.21swab字符串交换字节函数 286

12.22strlwr字符串小写转换函数 287

12.23strupr字符串大写转换函数 288

12.24strerror字符串错误信息函数 288

12.25atoi字符串转整型的函数 289

12.26atol字符串转长整型的函数 290

12.27atof字符串转浮点型的函数 291

12.28memcpy字符串拷贝函数 292

12.29memmove字块移动函数 293

12.30memcmp字符串比较函数 294

12.31memchr字符搜索函数 295

12.32memset字符加载函数 296

第13章 数学函数 297

13.1abs、labs、fabs求绝对值函数 297

13.2div、ldiv除法函数 298

13.3ceil向上舍入函数 299

13.4floor向下舍入函数 300

13.5fmod求模函数 301

13.6frexp分解浮点数函数 301

13.7ldexp装载浮点数函数 302

13.8modf分解双精度数函数 302

13.9exp求e的x次幂函数 303

13.10log、log10对数函数 303

13.11hypot求直角三角形斜边长函数 304

13.12pow、pow10指数函数 305

13.13sqrt开平方函数 306

13.14rand产生随机整数函数 306

13.15srand设置随机时间的种子函数 307

13.16sin正弦函数 308

13.17asin反正弦函数 308

13.18cos余弦函数 309

13.19acos反余弦函数 310

13.20tan正切函数 310

13.21atan反正切函数 311

13.22atan2反正切函数 311

13.23sinh双曲正弦函数 312

13.24cosh双曲余弦函数 312

13.25tanh双曲正切函数 313

第14章 时间和日期函数 314

14.1clock测定运行时间函数 314

14.2difftime计算时间差函数 315

14.3mktime时间类型转换函数 315

14.4time获取系统时间函数 317

14.5asctime日期和时间转换函数 318

14.6ctime时间转换函数 318

14.7gmtime将日历时间转换为GMT 319

14.8localtime把日期和时间转换为结构 320

第15章 其他函数 321

15.1calloc分配主存储器函数 321

15.2malloc动态分配内存函数 322

15.3realloc重新分配主存函数 323

15.4free释放内存函数 324

15.5abort异常终止进程函数 324

15.6exit正常终止进程函数 325

15.7atexit注册终止函数 326

15.8getenv获取环境变量 327

15.9bsearch二分搜索函数 327

15.10qsort快速排序函数 329

第16章 C语言常用算法 332

16.1结构化程序设计 332

16.2程序的灵魂——算法 334

16.3常用的数据结构 337

16.4顺序表 338

16.4.1顺序表的定义 338

16.4.2向顺序表中插入元素 339

16.4.3从顺序表中删除元素 340

16.4.4程序举例 341

16.5链表 343

16.5.1创建链表 344

16.5.2向链表中插入结点 344

16.5.3从链表中删除结点 345

16.5.4程序举例 346

16.6队列和栈 348

16.7树结构 349

16.8图结构 351

第17章 经典C编程实例 354

17.1打印特殊图案 354

17.2打印乘法口诀表 356

17.3计算100以内的素数 357

17.4判断回文数字 358

17.5计算最大公约数 360

17.6寻找阿姆斯特朗数 361

17.7歌德巴赫猜想的近似证明 363

17.8百钱买百鸡问题 366

17.9求π的近似值 367

17.10爱因斯坦的阶梯问题 371

17.11可扩展的数列排序 372

17.12八皇后问题 374

第18章 常见C语言试题解析 378

18.1C程序设计的基础知识 378

18.2顺序结构 385

18.3分支结构 388

18.4循环结构 396

18.5数组 403

18.6指针 411

18.7函数 420

18.8结构与联合 426

18.9位运算 429

18.10文件操作 433