图书目录

第1章简单的C程序/1

1.1内容介绍/1

1.1.1程序设计语言的发展/1

1.1.2C语言的特点/2

1.2实例/2

实例1.2.1在屏幕上输出信息/2

实例1.2.2计算两个整数之和并输出到

屏幕/5

实例1.2.3计算两个数的和、差、积、

商和余数并输出到屏幕/7

实例1.2.4求圆的周长和面积/10

实例1.2.5转义字符的使用/12

实例1.2.6求三角形的面积/14

实例1.2.7复合赋值运算符的使用/15

实例1.2.8自增自减运算符的使用/16

实例1.2.9检测各种数据类型所占的

字节数/18

实例1.2.10八进制、十六进制整数的

表示及输出/19

1.3小结/20

1.3.1数据类型/20

1.3.2标识符、常量与变量/20

1.3.3运算符/20

1.3.4printf函数和scanf函数/21

1.3.5数据类型转换/23

1.4实验/23

1.4.1实验目的/23

1.4.2实验内容/23

习题/25

第2章程序控制语句/27

2.1内容介绍/27

2.2实例/27实例2.2.1求两个数中较大的值/27

实例2.2.2求分段函数的值/29

实例2.2.3根据考试成绩,输出不同的

结果/32

实例2.2.4编一个程序计算指定年月有

几天/35

实例2.2.5求1~100的累加和/38

实例2.2.6求阶乘/39

实例2.2.7从键盘输入任意个正整数,求出

最大的数/40

实例2.2.8求100之内不能被3整除的整数

之和/42

实例2.2.9判断某个整数是否为素数/43

实例2.2.10打印乘法口诀表/44

实例2.2.11打印水仙花数(阿姆斯特

朗数)/45

实例2.2.12求π的近似值/47

实例2.2.13猴子吃桃问题/49

实例2.2.14鸡兔同笼问题/49

实例2.2.15求自守数/50

实例2.2.16求完数/51

实例2.2.17打鱼晒网问题/52

2.3小结/53

2.3.1关系运算符与关系表达式/53

2.3.2逻辑运算符与逻辑表达式/54

2.3.3条件运算符/54

2.3.4选择结构程序/54

2.3.5循环结构程序/55

2.3.6continue语句、break语句与goto

语句/55

2.4实验/55

2.4.1实验目的/55

2.4.2实验内容/56

习题/62

第3章指针/64

3.1内容介绍/64

3.2实例/64

实例3.2.1输出变量的地址/64

实例3.2.2通过指针变量存取变量

的值/66

实例3.2.3指针的算术运算/68

实例3.2.4指针的关系运算/70

实例3.2.5多级指针的使用/72

实例3.2.6动态分配内存/73

实例3.2.7动态分配多个连续的内存

单元/76

实例3.2.8重新分配存储单元/77

3.3小结/78

3.3.1地址、指针与指针变量/78

3.3.2指针的运算/79

3.3.3动态内存分配/79

3.4实验/79

3.4.1实验目的/79

3.4.2实验内容/80

习题/82

第4章数组/84

4.1内容介绍/84

4.2实例/84

实例4.2.1求班级考试的平均成绩/84

实例4.2.2使用数组输出Fibonacci数列

的前42项/86

实例4.2.3使用指针输出数组中所有元素

的值/87

实例4.2.4冒泡法排序/89

实例4.2.5使用二维数组处理多人多门

成绩/90

实例4.2.6矩阵相加/92

实例4.2.7二维数组的地址/93

实例4.2.8指向一维数组的指针/95

实例4.2.9字符数组与字符串/97

实例4.2.10输入两个字符串,按从小到大

顺序输出/100

实例4.2.11字符串排序/102

4.3小结/104

4.3.1一维数组/104

4.3.2二维数组/104

4.3.3字符数组/105

4.3.4指针数组与指向一维数组的指针

变量/106

4.3.5常用的字符串处理函数/106

4.3.6排序算法/107

4.4实验/107

4.4.1实验目的/107

4.4.2实验内容/107

习题/119

第5章函数/121

5.1内容介绍/121

5.2实例/121

实例5.2.1求两个数的最大值/121

实例5.2.2编写一个求x的n次方的

函数/124

实例5.2.3交换两个变量值的函数/125

实例5.2.4求平均成绩/128

实例5.2.5比较两个字符串大小的

函数/129

实例5.2.6设计魔方阵/131

实例5.2.7字符串排序/132

实例5.2.8加减乘除计算器/134

实例5.2.9计算1!+2!+3!+…+n!

的值/136

实例5.2.10用递归法求阶乘/138

实例5.2.11局部变量与全局变量/139

实例5.2.12用静态变量方法计算1!+2!

+3!+…+n!/141

5.3小结/143

5.3.1函数的定义与声明/143

5.3.2函数的参数/144

5.3.3函数的嵌套调用与递归调用/144

5.3.4变量的存储类别/144

5.4实验/145

5.4.1实验目的/145

5.4.2实验内容/145

习题/155

第6章构造类型/157

6.1内容介绍/157

6.2实例/157

实例6.2.1输入一个学生的各种信息再

输出/157

实例6.2.2将实例6.2.1中的年龄改为

出生日期/160

实例6.2.3处理多个学生的信息/162

实例6.2.4求多个学生的平均成绩/163

实例6.2.5输入一个短整型整数,求出

其高位数和低位数/165

实例6.2.6获取按键的信息/168

实例6.2.7输入一个整数,输出对应的

星期几/170

实例6.2.8建立单链表保存学生的

信息/172

实例6.2.9删除链表中指定的结点/175

6.3小结/177

6.3.1结构体类型的定义与应用/177

6.3.2共用体类型的定义与使用/178

6.3.3枚举类型的定义与使用/178

6.3.4typedef定义类型/179

6.3.5单链表/179

6.4实验/179

6.4.1实验目的/179

6.4.2实验内容/179

习题/187

第7章位运算/190

7.1内容介绍/190

7.2实例/190

实例7.2.1将一个整数的指定位设置为0

或1/190

实例7.2.2取出一个整数的奇数位和

偶数位/191

实例7.2.3将整数的指定位翻转/193

实例7.2.4求一个数的原码/194

7.3小结/196

7.3.1数值的表示方法/196

7.3.2位运算符/196

7.4实验/196

7.4.1实验目的/196

7.4.2实验内容/196

习题/200

第8章编译预处理/201

8.1内容介绍/201

8.2实例/201

实例8.2.1求圆的周长、面积和圆球

体积/201

实例8.2.2使用带参数的宏求圆的周长、

面积和圆球体积/202

实例8.2.3将宏定义放在一个单独的文件中求

圆的周长、面积和球体积/203

实例8.2.4条件编译/206

8.3小结/207

8.3.1宏定义/207

8.3.2文件包含/207

8.3.3条件编译/208

8.4实验/208

8.4.1实验目的/208

8.4.2实验内容/208

习题/209

第9章文件/211

9.1内容介绍/211

9.2实例/211

实例9.2.1在文件中写入整数1~10/211

实例9.2.2将文件中的若干个整数读

出来/213

实例9.2.3文件复制/215

实例9.2.4以行为单位读写文件/217

实例9.2.5读写学生信息/218

实例9.2.6随机访问文件/220

实例9.2.7更改文件名/223

9.3小结/224

9.3.1文件的打开与关闭/224

9.3.2文件的读写/224

9.3.3文件的定位与出错检测/224

9.4实验/225

9.4.1实验目的/225

9.4.2实验内容/225

习题/228

第10章综合实例/230

10.1内容介绍/230

10.2实例/230

实例10.2.1计算某一天是星期几/230

实例10.2.2八皇后问题/232

实例10.2.3迷宫/235

实例10.2.4简单的客房管理系统/241

附录A索引/247

参考文献/252