21天学通C语言 第6版 修订版PDF电子书下载
- 电子书积分:18 积分如何计算积分?
- 作 者:(美)BradleyL.Jones,(美)PeterAitken著
- 出 版 社:北京:人民邮电出版社
- 出版年份:2012
- ISBN:9787115287236
- 页数:614 页
第一周课程 2
第1天课程C语言概览 2
1.1 C语言简史 2
1.2为何要使用C语言 2
1.3编程前的准备工作 3
1.4程序开发周期 4
1.4.1创建源代码 4
1.4.2编译源代码 5
1.4.3链接以创建可执行文件 5
1.4.4结束开发周期 6
1.5第一个C语言程序 7
1.6总结 9
1.7问与答 10
1.8作业 10
1.8.1小测验 10
1.8.2练习 11
TY PE&RUN1打印程序清单 13
第一个TYPE&RUN 13
第2天课程C语言程序的组成部分 15
2.1一个简短的C语言程序 15
2.2程序的组成部分 16
2.2.1 main()函数(第8~23行) 16
2.2.2 #include编译指令(第2行) 16
2.2.3变量定义(第4行) 17
2.2.4函数原型(第6行) 17
2.2.5程序语句(第11、12、15、16、19、20、22和28行) 17
2.2.6函数定义(第26~29行) 17
2.2.7程序注释(第1、10、14、18和25行) 18
2.2.8使用花括号(第9、23、27和29行) 18
2.2.9运行程序 18
2.2.10有关精度的说明 19
2.3重温程序的组成部分 19
2.4总结 21
2.5问与答 21
2.6作业 22
2.6.1小测验 22
2.6.2练习 22
第3天课程 存储信息:变量和常量 24
3.1计算机内存 24
3.2使用变量存储信息 25
3.3数值变量的类型 26
3.3.1变量声明 28
3.3.2 typedef关键字 29
3.3.3初始化变量 29
3.4常量 30
3.4.1字面常量 30
3.4.2符号常量 30
3.5总结 33
3.6问与答 33
3.7作业 34
3.7.1小测验 34
3.7.2练习 34
第4天课程 语句、表达式和运算符 36
4.1语句 36
4.1.1空白对语句的影响 36
4.1.2创建空语句 37
4.1.3使用复合语句 37
4.2表达式 37
4.2.1简单表达式 37
4.2.2复杂表达式 38
4.3运算符 38
4.3.1赋值运算符 39
4.3.2数学运算符 39
4.3.3运算符优先级和圆括号 42
4.3.4子表达式的计算顺序 43
4.3.5关系运算符 43
4.4 if语句 44
4.4.1 else子句 46
4.5判断关系表达式 48
4.5.1关系运算符的优先级 49
4.6逻辑运算符 50
4.7再谈true/false值 51
4.7.1运算符的优先级 51
4.7.2复合赋值运算符 52
4.7.3条件运算符 53
4.7.4逗号运算符 53
4.8再谈运算符优先级 54
4.9总结 54
4.10问与答 55
4.11作业 55
4.11.1小测验 55
4.11.2练习 56
TYPE&RUN 2猜数游戏 58
第5天课程 使用函数封装代码 60
5.1函数是什么 60
5.1.1函数的定义 60
5.1.2函数的用法 60
5.2函数的工作原理 62
5.3函数和结构化编程 63
5.3.1结构化编程的优点 63
5.3.2规划结构化程序 63
5.3.3从顶向下的方法 64
5.4编写函数 65
5.4.1函数头 65
5.4.2函数的返回类型 65
5.4.3函数名 65
5.4.4参数列表 65
5.4.5函数体 67
5.4.6函数原型 70
5.5将参数传递给函数 71
5.6调用函数 71
5.7函数的位置 74
5.8内联函数 74
5.9总结 74
5.10问与答 75
5.11作业 75
5.11.1小测验 75
5.11.2练习 76
第6天课程 基本的程序流程控制 77
6.1数组的基本知识 77
6.2控制程序的执行 78
6.2.1 for语句 78
6.2.2嵌套for语句 82
6.2.3 while语句 83
6.2.4嵌套while语句 86
6.2.5 do...while循环 87
6.3嵌套循环 90
6.4总结 91
6.5问与答 91
6.6作业 92
6.6.1小测验 92
6.6.2练习 92
第7天课程 信息读写基础 94
7.1在屏幕上显示信息 94
7.1.1 printf()函数 94
7.1.2格式化字符串 94
7.1.3转义序列 95
7.1.4使用puts()显示消 100
7.2使用scanf()函数输入数值数据 101
7.3三字符序列 104
7.4总结 105
7.5问与答 105
7.6作业 106
7.6.1小测验 106
7.6.2练习 106
第一周复习 108
第二周课程 114
第8天课程 使用数值数组 114
8.1数组是什么 114
8.1.1一维数组 114
8.1.2多维数组 117
8.2命名和声明数组 118
8.2.1初始化数组 120
8.2.2初始化多维数组 120
8.2.3数组的最大长度 123
8.3总结 125
8.4问与答 125
8.5作业 126
8.51小测验 126
8.52练习 126
第9天课程 指针 128
9.1指针是什么 128
9.1.1计算机内存 128
9.1.2创建指针 129
9.2指针和简单变量 129
9.2.1声明指针 129
9.2.2初始化指针 130
9.2.3使用指针 130
9.3指针和变量类型 132
9.4指针和数组 133
9.4.1作为指针的数组名 133
9.4.2数组元素的存储 133
9.4.3指针算术 135
9.5有关指针的注意事项 138
9.6数组下标表示法和指针 138
9.7将数组传递给函数 139
9.8总结 143
9.9问与答 143
9.10作业 143
9.10.1小测验 143
9.10.2练习 144
TYPE&RUN 3让程序暂停 145
第10天课程 字符和字符串 147
10.1char数据类型 147
10.2使用字符变量 147
10.3使用字符串 150
10.3.1字符数组 150
10.3.2初始化字符数组 150
10.4字符串和指针 151
10.5不存储在数组中的字符串 151
10.5.1编译时分配字符空间 151
10.5.2 malloc()函数 152
10.5.3使用malloc()函数 153
10.6显示字符串和字符 155
10.6.1 puts()函数 155
10.6.2 printf()函数 156
10.7从键盘读取字符串 156
10.7.1使用gets()函数输入字符串 156
10.7.2使用scanf()函数输入字符串 159
10.8总结 161
10.9问与答 161
10.10作业 162
10.10.1小测验 162
10.10.2练习 163
第11天课程 结构、共用体和TypeDef 164
11.1简单结构 164
11.1.1定义和声明结构 164
11.1.2存取结构的成员 165
11.2复杂结构 167
11.2.1包含其他结构的结构 167
11.2.2包含数组的结构 170
11.3结构数组 171
11.4初始化结构 174
11.5结构和指针 176
11.5.1将指针作为结构的成员 176
11.5.2创建指向结构的指针 178
11.5.3使用指针和结构数组 179
11.5.4将结构作为参数传递给函数 181
11.6共用体 182
11.6.1定义、声明和初始化共用体 182
11.6.2存取共用体的成员 183
11.7使用typedef给结构创建别名 187
11.8总结 187
11.9问与答 187
11.10作业 188
11.10.1小测验 188
11.10.2练习 188
第12天课程变量作用域 190
12.1作用域是什么 190
12.1.1演示作用域 190
12.1.2作用域为何重要 192
12.2外部变量 192
12.2.1外部变量的作用域 192
12.2.2何时使用外部变量 192
12.2.3 exte关键字 192
12.3局部变量 193
12.3.1静态变量和动态变量 194
12.3.2函数参数的作用域 196
12.3.3外部静态变量 196
12.3.4寄存器变量 196
12.4局部变量和main()函数 197
12.5应使用哪种存储类型 197
12.6局部变量和代码块 198
12.7总结 199
12.8问与答 199
12.9作业 200
12.9.1小测验 200
12.9.2练习 200
TYPE&RUN 4机密消息 203
第13天课程 高级程序流程控制 206
13.1提早结束循环 206
13.1.1 break语句 206
13.1.2 continue语句 208
13.2 goto语句 209
13.3死循环 211
13.4 switch语句 214
13.5退出程序 221
13.6在程序中执行操作系统命令 222
13.7总结 224
13.8问与答 224
13.9作业 225
13.9.1小测验 225
13.9.2练习 225
第14天课程 操纵屏幕、打印机和键盘 227
14.1流和C语言 227
14.1.1何为程序的输入/输出 227
14.1.2什么是流 228
14.1.3文本流和二进制流 228
14.1.4预定义的流 228
14.2使用C语言的流函数 229
14.3读取键盘输入 230
14.3.1字符输入 230
14.3.2格式化输入 236
14.4控制屏幕输出 242
14.4.1使用putchar()putc()和fputc()输出字符 242
14.4.2使用puts()和fputs()输出字符串 244
14.4.3使用printf()和fprintf()格式化输出 244
14.5重定向输入输出 249
14.6何时使用fprintf() 251
14.7总结 252
14.8问与答 253
14.9作业 253
14.9.1小测验 253
14.9.2练习 254
第二周复习 255
第三周课程 262
第15天课程 有关指针的高级主题 262
15.1声明指向指针的指针 262
15.2指针和多维数组 263
15.3指针数组 269
15.3.1复习字符串和指针 269
15.3.2声明char类型指针数组 269
15.3.3范例 271
15.4函数指针 275
15.4.1声明函数指针 276
15.4.2初始化并使用函数指针 276
15.5链表 283
15.5.1有关链表的基本知识 283
15.5.2使用链表 284
15.5.3演示简单链表 288
15.5.4实现链表 290
15.6总结 297
15.7问与答 297
15.8作业 297
15.8.1小测验 297
15.8.2练习 298
第16天课程 使用磁盘文件 300
16.1将流与磁盘文件关联起来 300
16.2磁盘文件的类型 300
16.3文件名 301
16.4打开文件 301
16.5读写文件数据 304
16.5.1格式化文件输入/输出 304
16.5.2字符输入/输出 307
16.5.3直接文件输入/输出 309
16.6文件缓冲技术:关闭和刷新文件 311
16.7顺序文件存取和随机文件存取 312
16.7.1 ftell()和rewind()函数 313
16.7.2 fseek()函数 315
16.8检测文件尾 317
16.9文件管理函数 319
16.9.1删除文件 319
16.9.2给文件重命名 320
16.9.3复制文件 321
16.10使用临时文件 323
16.11总结 324
16.12问与答 324
16.13作业 325
16.13.1小测验 325
16.13.2练习 325
TYPE&RUN 5计算字符数 327
第17天课程 操纵字符串 331
17.1确定字符串的长度 331
17.2复制字符串 332
17.2.1 strcpy()函数 332
17.2.2 stmcpy()函数 333
17.2.3 strdup()函数 334
17.3拼接字符串 335
17.3.1 strcat()函数 335
17.3.2 strncat()函数 337
17.4比较字符串 338
17.4.1比较两个完整字符串 338
17.4.2比较字符串的一部分 340
17.4.3比较字符串时忽略大小写 341
17.5查找字符串 341
17.5.1 strchr()函数 341
17.5.2 strrchr()函数 342
17.5.3 strcspn()函数 342
17.5.4 strspn()函数 343
17.5.5 strpbrk()函数 344
17.5.6 strstr()函数 345
17.6字符串转换 346
17.7其他字符串函数 347
17.7.1 strrev()函数 347
17.7.2 strset()和strnset()函数 347
17.8将字符串转换为数字 348
17.8.1将字符串转换为int 348
17.8.2将字符串转换为long值 349
17.8.3将字符串转换为long long值 349
17.8.4将字符串转换为浮点数 349
17.9字符检测函数 350
17.10总结 354
17.11问与答 354
17.12作业 355
17.12.1小测验 355
17.12.2练习 355
第18天课程 有关函数的高级主题 357
18.1将指针传递给函数 357
18.2 void类型的指针 360
18.3接受可变数目参数的函数 362
18.4返回指针的函数 364
18.5总结 366
18.6问与答 366
18.7作业 367
18.7.1小测验 367
18.7.2练习 367
第19天课程 函数库 369
19.1数学函数 369
19.1.1三角函数 369
19.1.2指数函数和对数函数 369
19.1.3双曲线函数 370
19.1.4其他数学函数 370
19.1.5演示数学函数 370
19.2处理时间 371
19.2.1时间的表示 371
19.2.2时间函数 372
19.2.3使用时间函数 374
19.3处理错误 376
19.3.1 assert()宏 376
19.3.2头文件errno.h 378
19.3.3 perror()函数 378
19.4查找和排序 380
19.4.1使用bsearch()进行查找 380
19.4.2使用qsort()进行排序 381
19.4.3演示查找和排序 381
19.5总结 386
19.6问与答 386
19.7作业 387
19.7.1小测验 387
197.2练习 387
TYPE&RUN 6计算抵押贷款的偿还金额 389
第20天课程 管理内存 391
20.1类型转换 391
20.1.1自动类型转换 391
20.1.2显式转换 393
20.2分配内存的存储空间 394
20.2.1使用malloc()函数分配内存 394
20.2.2使用calloc()函数分配内存 396
20.2.3使用realloc()函数分配更多的内存 397
20.2.4使用free()函数释放内存 399
20.3操纵内存块 400
20.3.1使用memset()函数初始化内存 401
20.3.2使用memcpy()复制内存中的数据 401
20.3.3使用memmove()函数移动内存中的数据 401
20.4位的用法 402
20.4.1移位运算符 403
20.4.2按位逻辑运算符 404
20.4.3求补运算符 405
20.4.4结构中的位字段 405
20.5总结 406
20.6问与答 407
20.7作业 407
20.7.1小测验 407
20.7.2练习 408
第21天课程 编译器的高级用法 410
21.1使用多个源代码文件的编程 410
21.1.1模块化编程的优点 410
21.1.2模块化编程技术 410
21.1.3模块的组成部分 412
21.1.4外部变量和模块化编程 413
21.1.5使用.obj文件 413
21.1.6使用生成工具 414
21.2 C语言的预处理器 414
21.2.1 #define预处理器编译指令 415
21.2.2使用编译指令#include 418
21.2.3使用#if、#elif、#else和#endif 418
21.2.4使用#if...#endif来帮助调试 419
21.2.5避免将头文件包含多次 420
21.2.6 #undef编译指令 420
21.3预定义的宏 421
21.4使用命令行参数 421
21.5总结 423
21.6问与答 423
21.7作业 424
21.7.1小测验 424
21.7.2练习 424
第三周复习 426
附加课程 434
第22天课程 附加课程1面向对象编程语言 434
22.1过程性语言和面向对象语言 434
22.2面向对象的特征 435
22.2.1多态 435
22.2.2封装 437
22.2.3继承 438
22.2.4使用OOP 438
22.2.5 C++++与C语言的关系 441
22.2.6 C++++程序 442
22.3 Java编程语言 442
22.3.1 Java与C和C++++的关系 442
22.3.2 Java的平台独立性 443
22.3.3包 443
22.3.4 Java小程序(applet)和应用程序 443
22.3.5 Java的类库 443
22.3.6使用Java编写一个显示Hello,World的程序 444
22.4 C#编程语言 444
22.5总结 445
22.6问与答 445
22.7作业 446
22.7.1小测验 446
22.7.2练习 446
第23天课程 附加课程2 C++编程语言 447
23.1第一个C+++程序 447
23.2 C+++的关键字 449
23.3 C+++的数据类型 449
23.4声明变量 450
23.5运算 451
23.6函数 451
23.6.1重载函数 451
23.6.2为参数设置默认值 451
23.6.3内联函数 453
23.7总结 456
23.8问与答 456
23.9作业 456
23.9.1小测验 456
23.9.2练习 457
第24天课程 附加课程3 C++类和对象 458
24.1 C+++中的复杂数据类型 458
24.2类的用法 464
24.2.1控制对类中数据的访问 465
24.2.2设置类数据的访问类型 466
24.3创建存取成员函数 469
24.4结构与类 471
24.5类的内务管理 472
24.5.1构造函数 472
24.5.2析构函数 472
24.5.3使用构造函数和析构函数 472
24.6再谈函数重载 474
24.7再谈C+++的OOP特征 474
24.8将类用作数据成员 474
24.9继承 475
24.9.1创建用于继承的基类 476
24.9.2数据存取限定符protected 478
24.9.3继承基类 478
24.9.4再谈构造函数和析构函数 481
24.10本书介绍的C+++知识小结 482
24.11详细介绍C+++的图书 483
24.1.2总结 483
24.13问与答 483
24.14作业 484
24.14.1小测验 484
24.14.2练习 484
第25天课程 附加课程4 Java语言基础 485
25.1 Java程序的结构 485
25.2 Java程序的基本组成部分 485
25.2.1导入语句 486
25.2.2方法 486
25.2.3注释 486
25.3 Java中的关键字 487
25.4 Java标识符 488
25.5数据类型 489
25.5.1基本数据类型 489
25.5.2常量 490
25.5.3声明和初始化变量 490
25.5.4变量的作用域 490
25.5.5存储字符串数据 491
25.6输入和输出 492
25.7数组 494
25.8 运算符 494
25.9流程控制 495
25.9.1 if...else 495
25.9.2 while和do...while 495
25.9.3 switch 496
25.9.4 for 496
25.10总结 497
25.11问与答 497
25.12作业 497
25.12.1小测验 497
25.12.2练习 498
第26天课程 附加课程5 Java类和方法 499
26.1定义类 499
26.1.1指定类所属的包 500
26.1.2创建类的属性 500
26.1.3创建并使用一个简单的类 500
26.2类的方法 501
26.2.1方法演示 502
26.2.2重载方法 504
26.2.3类的构造函数 505
26.3使用继承 508
26.4总结 511
26.5问与答 511
26.6作业 511
第27天课程 附加课程6其他Java技术 512
27.1异常 512
27.2读写文件 513
27.2.1读文本文件 513
27.2.2写文本文件 514
27.3图形和Windows编程 516
27.3.1创建Windows应用程序 516
27.3.2绘制几何形状和直线 517
27.3.3使用按钮和弹出式窗口 519
27.4编写Java小程序 522
27.4.1小程序和应用程序之间的区别 522
27.4.2小程序的结构 523
27.4.3将小程序加入到Web页中 523
27.4.4使用小程序 524
27.5总结 525
27.6问与答 526
27.7作业 526
第28天课程 附加课程7 C#编程语言 527
28.1 C#是什么 527
28.2为何使用C 527
28.2.1 C#是简单的 528
28.2.2 C#是现代的 528
28.2.3 C#是面向对象的 528
28.2.4 C#强大、灵活 528
28.2.5 C#包含的单词为数不多 528
28.2.6 C#是模块化的 529
28.2.7 C#是流行的 529
28.3 C#和其他编程语言的比较 529
28.4 C#程序的类型 530
28.5创建C#程序 530
28.5.1给源代码文件命名 530
28.5.2执行C#程序 531
28.5.3编译C#源代码 531
28.5.4 C#编译器和.NET运行环境 532
28.6第一个C#程序 532
28.7显示基本信息 532
28.8 C#和Web 534
28.9总结 535
28.10问与答 535
28.11作业 535
28.11.1小测验 535
28.11.2练习 536
附加课程复习 537
附录A ASCII字符集 538
附录B C/C++中的保留字 542
附录C使用二进制和十六进制数 544
C.1十进制 544
C.2二进制 544
C.3十六进制 544
附录D移植性问题 546
D.1 ANSI标准 546
D.2 ANSI关键字 546
D.3区分大小写 546
D.4可移植的字符 548
D.5确保ANSI兼容性 548
D.6绕开ANSI标准 549
D.7使用可移植的数值变量 549
D.7.1最大值和最小值 550
D.7.2确定数字的类型 555
D.7.3转换字符的大小写:一个可移植性范例 558
D.8 可移植的结构和共用体 559
D.8.1字对齐 559
D.8.2读写结构 560
D.8.3在可移植的程序中使用非-ANSI特性 560
D.8.4 ANSI标准头文件 562
D.9总结 562
D.10问与答 562
D.11作业 563
D.11.1小测验 563
D.11.2练习 563
附录E常用的C语言函数 565
附录F作业答案 569
第1天课程的答案 569
第2天课程的答案 570
第3天课程的答案 571
第4天课程的答案 572
第5天课程的答案 574
第6天课程的答案 577
第7天课程的答案 578
第8天课程的答案 582
第9天课程的答案 586
第10天课程的答案 588
第11天课程的答案 590
第12天课程的答案 592
第13天课程的答案 595
第14天课程的答案 596
第15天课程的答案 597
第16天课程的答案 599
第17天课程的答案 599
第18天课程的答案 600
第19天课程的答案 601
第20天课程的答案 601
第21天课程的答案 603
附加课程1的答案 603
附加课程2的答案 604
附加课程3的答案 604
附加课程4的答案 605
附加课程5的答案 605
附加课程6的答案 605
附加课程7的答案 606
附录G Dev-C++编译器 607
C.1 Dev-C+++简介 607
G.2在Microsoft Windows上安装Dev-C+++ 607
G.3 Dev-C+++中的程序 609
G.4使用Dev-C+++ 609
G.4.1针对C语言编程定制Dev-C++++ 610
G.4.2在Dev-C++++中输入并编译程序 611
G.4.3编译Dev-C++++程序 613
G.4.4运行Dev-C++++程序 613
G.5总结 614
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《幼儿园课程资源丛书 幼儿园语言教育资源》周兢编 2015
- 《高等学校“十三五”规划教材 C语言程序设计》翟玉峰责任编辑;(中国)李聪,曾志华,江伟 2019
- 《音乐语言的根基》张艺编著 2019
- 《认知语言学视野的抽象方位结构研究》曹爽著 2019
- 《激活语言思维》李蒨,王宏年,汤青编著 2017
- 《汉语言文学本科专业核心课程研究导引教材 古代汉语》马蓝婕责任编辑;(中国)魏宜辉 2019
- 《信号 修订版》铁道部通信信号公司研究设计院 1979
- 《英语教师语言意识研究》秦莉,赵春贺著 2019
- 《中国舞等级考试教材 第1级 幼儿修订版》孙光言编;钟斌斌责编 2019
- 《SQL与关系数据库理论》(美)戴特(C.J.Date) 2019
- 《魔法销售台词》(美)埃尔默·惠勒著 2019
- 《看漫画学钢琴 技巧 3》高宁译;(日)川崎美雪 2019
- 《优势谈判 15周年经典版》(美)罗杰·道森 2018
- 《社会学与人类生活 社会问题解析 第11版》(美)James M. Henslin(詹姆斯·M. 汉斯林) 2019
- 《海明威书信集:1917-1961 下》(美)海明威(Ernest Hemingway)著;潘小松译 2019
- 《迁徙 默温自选诗集 上》(美)W.S.默温著;伽禾译 2020
- 《上帝的孤独者 下 托马斯·沃尔夫短篇小说集》(美)托马斯·沃尔夫著;刘积源译 2017
- 《巴黎永远没个完》(美)海明威著 2017
- 《剑桥国际英语写作教程 段落写作》(美)吉尔·辛格尔顿(Jill Shingleton)编著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《办好人民满意的教育 全国教育满意度调查报告》(中国)中国教育科学研究院 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《人民院士》吴娜著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《中国人民的心》杨朔著;夕琳编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中华人民共和国成立70周年优秀文学作品精选 短篇小说卷 上 全2册》贺邵俊主编 2019
- 《指向核心素养 北京十一学校名师教学设计 数学 九年级 上 配人教版》周志英总主编 2019
- 《中华人民共和国成立70周年优秀文学作品精选 中篇小说卷 下 全3册》洪治纲主编 2019