C语言程式设计(第2版) 由李忠月、励龙昌、虞铭财于2017年出版
基本介绍
- 书名:C语言程式设计(第2版)
- 作者:李忠月、励龙昌、虞铭财
- 出版社:清华大学出版社
- 出版时间:2017.10.01
- 印次:2-1
- 印刷日期:2017.08.23
图书信息
C语言程式设计(第2版)
作者:李忠月、励龙昌、虞铭财
定价:49元
印次:2-1
ISBN:9787302483557
出版日期:2017.10.01
印刷日期:2017.08.23
印次:2-1
ISBN:9787302483557
出版日期:2017.10.01
印刷日期:2017.08.23
内容简介
本书採用“实例导入问题提出解释与套用”的叙述模式,以生动有趣的案例引入,从情境中提出问题,建立数学模型,获得解决方法,最后实现套用。全书共分12章,包括概述、分支结构、循环结构、函式、数组、指针、结构等内容。
图书目录
第1章概述/1
1.1电脑程式设计语言1
1.1.1机器语言1
1.1.2彙编语言1
1.1.3高级语言2
1.2用程式设计语言编写程式的步骤2
1.2.1编码2
1.2.2编译2
1.2.3调试3
1.2.4维护3
1.3结构化程式设计方法4
1.4算法4
1.4.1算法的特性5
1.4.2算法的描述5
1.5关于C程式设计语言8
1.5.1C语言出现的历史背景8
1.5.2C语言的特点9
1.6简单的C语言程式10
1.6.1输出hello,world10
1.6.2计算a+b11
1.6.3计算分段函式的值12
1.6.4按先大后小的顺序输出两个整数13
1.6.5华氏温度与摄氏温度的转换14
练习16
第2章类型、运算符与表达式/19
2.1变数19
2.1.1变数的命名规则19
2.1.2变数的声明20
2.2数据类型及长度21〖1〗C语言程式设计(第2版)目录[3]〖3〗2.2.1short与long限定符21
2.2.2signed与unsigned限定符21
2.2.3每种数据类型的printf和scanf格式转换符22
2.3常量25
2.3.1整数常量与浮点数常量25
2.3.2字元常量25
2.3.3字元串常量26
2.3.4符号常量27
2.3.5枚举常量27
2.4常量表达式28
2.5算术运算符28
2.6关係运算符与逻辑运算符28
2.7自增运算符与自减运算符31
2.8逗号运算符31
2.9赋值运算符与赋值表达式32
2.10条件运算符与条件表达式33
2.11一元运算符sizeof34
2.12类型转换34
2.13运算符的优先权及求值次序36
练习37
第3章分支结构/44
3.1实例导入44
3.2语句与程式块45
3.3ifelse语句45
3.4elseif语句48
3.5switch语句50
3.6套用实例:学生成绩管理56
练习58
第4章循环结构/62
4.1实例导入62
4.2while循环65
4.3for循环70
4.4dowhile循环74
4.5三种循环语句的比较76
4.6循环结构的嵌套77
4.7break语句与continue语句83
4.8goto语句与标号88
4.9专题1:正整数的拆分89
4.10专题2:叠代法92
4.11套用实例:学生成绩管理95
练习96
第5章输入与输出/109
5.1getchar()函式109
5.2putchar()函式110
5.3printf()函式113
5.4scanf()函式114
5.5套用实例:求和116
练习122
第6章函式/126
6.1实例导入126
6.2函式的基本知识129
6.2.1函式的定义129
6.2.2函式的调用130
6.2.3函式的声明135
6.2.4函式设计的基本原则138
6.3函式的嵌套调用139
6.4函式的递归调用139
6.5变数的存储类型145
6.6变数的类别145
6.6.1外部变数与内部变数145
6.6.2静态变数147
6.6.3暂存器变数148
6.7变数的作用域与生存期148
6.7.1变数的作用域148
6.7.2变数的生存期149
6.7.3记忆体空间及分配方式149
6.8程式块结构156
6.9变数的初始化156
6.10预处理157
6.10.1档案包含157
6.10.2宏替换157
6.10.3条件编译159
6.11专题3:最大公约数的求解161
6.11.1bruteforce算法161
6.11.2欧几里德算法162
6.11.3更相减损法164
练习165
第7章数组/177
7.1实例导入177
7.2一维数组180
7.2.1一维数组的定义180
7.2.2一维数组元素的引用181
7.2.3一维数组的初始化181
7.2.4一维数组的套用举例182
7.3二维数组184
7.3.1二维数组的定义184
7.3.2二维数组元素的引用184
7.3.3二维数组的初始化185
7.3.4二维数组的套用举例186
7.4字元数组192
7.4.1字元数组的定义和引用192
7.4.2字元数组的初始化192
7.4.3字元数组的输入/输出193
7.4.4字元数组的套用举例195
7.5数组与函式参数197
7.5.1数组元素作函式实参197
7.5.2数组作函式实参198
7.6查找和排序201
7.6.1查找201
7.6.2排序203
7.7专题4:进制转换206
7.7.1十进制整数转换成其他进制整数206
7.7.2其他进制整数转换成十进制整数208
7.8专题5:素数209
7.8.1素数判定的基本方法209
7.8.2一定範围内所有素数的求解217
7.9套用实例:学生成绩管理220
练习222
第8章指针/240
8.1实例导入240
8.2指针的基本知识246
8.2.1指针变数的声明246
8.2.2指针变数的初始化246
8.2.3指针变数的基本运算246
8.3指针与数组249
8.3.1指针与一维数组249
8.3.2指针与多维数组258
8.4指针与函式259
8.4.1指针作为函式的参数259
8.4.2指针作为函式的返回值263
8.4.3指向函式的指针266
8.5字元指针与函式267
8.6指针数组269
8.6.1指针数组的声明269
8.6.2指针数组的初始化269
8.6.3指针数组与二维数组的区别269
8.7命令行参数270
8.8指向指针的指针271
8.9动态分配272
8.9.1动态分配记忆体272
8.9.2释放记忆体272
8.9.3void类型273
8.9.4动态数组273
8.9.5查找malloc中的错误275
练习275
第9章结构/297
9.1实例导入297
9.2结构的基本知识302
9.2.1结构类型的定义303
9.2.2结构变数的定义303
9.2.3结构成员的访问304
9.2.4对结构变数的操作304
9.2.5结构变数的初始化306
9.2.6结构的嵌套307
9.3结构数组308
9.4结构指针311
9.5typedef313
9.6结构与函式314
9.7单鍊表315
9.7.1单鍊表的创建316
9.7.2单鍊表的输出316
9.7.3单鍊表的插入316
9.7.4单鍊表的删除319
9.7.5鍊表的综合操作319
9.8联合321
9.9枚举324
9.9.1枚举类型的定义324
9.9.2枚举变数的定义324
9.9.3对枚举变数的操作325
9.10套用实例:学生成绩管理327
9.10.1用结构数组实现328
9.10.2用单鍊表实现329
练习332
第10章位运算/342
10.1原码、反码和补码342
10.2位运算符343
10.2.1与运算符343
10.2.2或运算符343
10.2.3异或运算符343
10.2.4取反运算符344
10.2.5左移运算符和右移运算符344
10.3位赋值运算符347
10.4位域348
练习349
第11章档案/352
11.1实例导入353
11.2C语言中档案的使用354
11.2.1声明FILE类型的变数355
11.2.2打开档案355
11.2.3执行I/O操作356
11.2.4关闭档案356
11.3字元I/O357
11.3.1读字元函式fgetc()357
11.3.2写字元函式fputc()357
11.4行I/O360
11.4.1读字元串函式fgets()360
11.4.2写字元串函式fputs()360
11.5格式化I/O361
11.5.1格式化输出函式fprintf()和sprintf()361
11.5.2格式化输入函式fscanf()和sscanf()361
11.6数据块读写363
11.6.1数据块读函式fread()363
11.6.2数据块写函式fwrite()363
11.7档案的定位363
11.7.1fseek()函式363
11.7.2ftell()函式365
11.7.3rewind()函式365
11.8错误检测函式366
11.8.1clearerr()函式366
11.8.2feof()函式366
11.8.3ferror()函式366
11.9套用实例:学生成绩管理366
练习371
第12章大串讲/376
12.1顺序输出整数的各位数字376
12.2计算阶乘之和378
12.3Fibonacci数列380
12.4计算函式的值383
12.5在有序数组中插入一个元素384
附录A常用字元与ASCII码对照表/388
附录B常用的C语言库函式/390
B.1数学函式390
B.2字元处理函式391
B.3字元串处理函式392
B.4实用函式393
附录C与具体实现相关的限制/394
参考文献/395