第1章 算法与C程序设计 1
1.1 算法 1
1.1.1 算法的相关知识 1
1.1.2 算法表示案例 8
1.2 C程序设计 10
1.2.1 分析问题 11
1.2.2 C程序设计的基本方法 11
1.2.3 C语言程序的构成和基本格式 12
1.3 C语言程序的集成开发环境 13
练习与实战 18
第2章 C语言基础 21
2.1 C语言特点 21
2.1.1 C语言的来历 21
2.1.2 C语言的特点 21
2.2 数据类型 22
2.3 标识符与关键字 23
2.4 常量和变量 24
2.4.1 常量 24
2.4.2 变量 25
2.5 表达式 26
2.5.1 算术运算符与算术表达式 27
2.5.2 强制类型转换运算符与强制类型转换表达式 28
2.5.3 赋值运算符和赋值表达式 28
2.5.4 自增、自减运算符 30
2.5.5 逗号运算符和逗号表达式 31
2.6 C语言数据类型、运算符和表达式实验指导 32
2.7 书写上机实验报告 33
练习与实战 34
第3章 顺序结构程序设计 37
3.1 C语句 37
3.1.1 变量定义语句 37
3.1.2 表达式语句 37
3.1.3 复合语句 38
3.1.4 空语句 38
3.2 数据的输入和输出 38
3.2.1 printf函数(格式输出函数) 39
3.2.2 scanf函数(格式输入函数) 42
3.3 顺序结构程序案例 43
3.4 顺序结构程序设计实验指导 46
练习与实战 47
第4章 选择结构程序设计 50
4.1 关系表达式和逻辑表达式 50
4.1.1 关系表达式 50
4.1.2 逻辑表达式 52
4.2 由if语句实现的选择结构 53
4.2.1 if语句的两种基本形式 54
4.2.2 if语句的嵌套 57
4.3 由switch语句实现的多分支选择结构 61
4.3.1 switch语句的基本形式 61
4.4 能实现双分支选择结构的条件表达式 64
4.5 选择结构程序设计实验指导 64
练习与实战 66
第5章 循环结构程序设计 68
5.1 while循环语句 68
5.2 do-while循环语句 70
5.3 for循环语句 73
5.4 循环的嵌套 77
5.5 break语句和continue语句 79
5.5.1 break语句 79
5.5.2 continue语句 79
5.6 循环结构程序设计实验指导 82
练习与实战 83
第6章 数组与字符串 87
6.1 一维数组 87
6.1.1 一维数组的定义 87
6.1.2 一维数组元素的引用 87
6.1.3 一维数组的初始化 89
6.1.4 一维数组程序案例 89
6.2 二维数组 93
6.2.1 二维数组的定义 93
6.2.2 二维数组元素的引用 94
6.2.3 二维数组的初始化 95
6.2.4 二维数组程序案例 96
6.3 字符数组与字符串 97
6.3.1 字符数组的定义 97
6.3.2 字符数组的初始化 97
6.3.3 字符数组的案例 98
6.3.4 字符串处理函数 100
6.4 数组程序设计实验指导 102
练习与实战 103
第7章 指针 105
7.1 指针和指针变量 105
7.1.1 指针的概念及指针变量 105
7.1.2 指针变量的定义 106
7.1.3 指针变量的引用 107
7.2 指针与数组 111
7.2.1 指针与数组元素的关系 111
7.2.2 指针运算 112
7.2.3 指针与数组 115
7.2.4 指针与字符串 118
7.3 指针数组 119
7.3.1 指针数组的定义 119
7.3.2 指针数组元素的使用 120
7.4 指针程序设计实验指导 121
练习与实战 122
第8章 模块化程序设计 125
8.1 概述 125
8.2 函数的定义 125
8.3 函数的参数和返回值 127
8.3.1 函数的参数 127
8.3.2 函数的返回值 128
8.4 函数的调用 129
8.4.1 函数调用的一般形式 129
8.4.2 对被调用函数的声明和函数原型 131
8.4.3 函数的嵌套调用 132
8.4.4 函数的递归调用 134
8.5 数组作为函数的参数 136
8.6 变量的作用域 138
8.6.1 局部变量 138
8.6.2 全局变量 139
8.7 变量的存储类别 140
8.8 函数程序设计实验指导 144
练习与实战 145
第9章 复杂数据类型 150
9.1 结构体 150
9.1.1 结构体类型的定义 150
9.1.2 结构体变量的引用 153
9.1.3 结构体数组 155
9.2 共用体 158
9.2.1 共用体类型定义 159
9.2.2 共用体类型应用案例 160
9.3 枚举类型 161
9.4 用typedef为类型定义别名 163
9.5 结构体程序设计实验指导 163
练习与实战 165
附录A C语言的库函数 169
参考文献 174