目录 第1章概述1 1.1C语言简介1 1.2简单的C程序1 1.2.1printf函数2 1.2.2基本整型与%d格式符3 1.2.3加、减、乘、除运算符和算术表达式4 1.2.4单精度浮点型与%f格式符5 1.3算法6 1.3.1算法概述6 1.3.2算法图示表示法7 本章小结10 习题110第2章顺序结构程序设计12 2.1常量、变量、标识符12 2.2scanf函数13 2.3数学函数14 2.4赋值、自增、自减运算符 15 本章小结17 习题217第3章选择结构程序设计19 3.1if语句19 3.1.1关系运算与单分支if语句19 3.1.2求余运算与双分支if语句21 3.1.3逻辑运算与多分支if语句22 3.1.4if语句的嵌套25 3.1.5条件运算符与条件表达式25 3.1.6程序举例26 3.2switch语句28 本章小结30 习题331第4章循环结构程序设计32 4.1while语句32 4.2dowhile语句36 4.3for语句38 4.4break语句40 4.5循环的嵌套43 4.6常用算法举例46 本章小结55 习题461第5章数组63 5.1一维数组63 5.1.1一维数组的定义和引用63 5.1.2一维数组的初始化64 5.1.3随机函数rand和random66 5.1.4一维数组的简单应用67 5.1.5符号常量73 5.2二维数组76 5.2.1二维数组的定义和引用77 5.2.2二维数组的输入与输出78 5.3字符型数据82 5.3.1字符常量82 5.3.2字符串常量83 5.3.3字符型变量83 5.3.4getchar和putchar函数83 5.3.5字符数组84 5.3.6字符串处理函数88 5.4数组综合应用举例96 本章小结98 习题599第6章函数100 6.1函数概述100 6.2函数的定义102 6.3函数的调用105 6.3.1实参和形参105 6.3.2函数的结束与返回107 6.3.3对被调函数的声明112 6.3.4函数的嵌套调用113 6.4递归函数114 6.5数组作函数参数117 6.5.1数组元素作实参117 6.5.2数组名作函数的参数117 6.6变量的存储类别128 6.6.1自动变量、静态变量和寄存器变量128 6.6.2全局变量和局部变量129 6.7编译预处理132 6.7.1宏定义132 6.7.2文件包含 133 6.7.3条件编译134 本章小结136 习题6136第7章指针139 7.1指针概述139 7.2指针变量140 7.2.1指针变量的定义140 7.2.2指针变量的使用141 7.2.3二级指针与多级指针144 7.3指针与数组146 7.3.1一维数组与指针146 7.3.2指针运算148 7.3.3用指针法访问一维数组举例150 7.3.4二维数组与指针153 7.3.5指针与字符串158 7.3.6指针数组162 7.4指针与函数165 7.4.1指针作函数参数165 7.4.2指向数组(元素)的指针作函数参数169 7.4.3指针作函数返回值174 7.4.4指向函数的指针175 7.5带参的主函数176 本章小结178 习题7180第8章结构体与动态内存分配182 8.1结构体概述182 8.2结构体变量184 8.2.1结构体变量的定义184 8.2.2结构体变量的使用185 8.2.3结构体变量作函数参数187 8.3结构体数组188 8.3.1结构体数组的定义 188 8.3.2结构体数组的使用189 8.4结构体与指针192 8.4.1指向结构体的指针192 8.4.2结构体数组与指针 194 8.4.3结构体指针变量作函数参数195 8.5动态内存分配196 8.5.1动态分配内存的管理函数196 8.5.2使用动态分配内存方法管理单一基本类型数据198 8.5.3使用动态分配内存方法管理结构体类型数据199 8.5.4使用动态分配内存方法管理动态数组200 8.5.5使用动态分配内存方法实现由变量确定数组的元素个数202 8.5.6动态分配的内存数据作函数的参数203 8.6链表204 8.6.1链表的基本概念204 8.6.2驱动链表操作的主函数206 8.6.3链表的基本操作函数207 本章小结210 习题8211第9章文件212 9.1文件概述212 9.1.1文件命名212 9.1.2文件类型213 9.1.3文件指针214 9.1.4缓冲文件系统214 9.2文件的打开与关闭215 9.2.1打开文件函数215 9.2.2关闭文件函数217 9.3文件的读写操作218 9.3.1对文本文件输入输出字符218 9.3.2对文本文件格式化输入输出222 9.3.3对文本文件输入输出字符串228 9.3.4对二进制文件输入输出数据块229 9.4定位读写文件233 9.4.1rewind函数233 9.4.2fseek函数234 9.4.3ftell函数234 本章小结236 习题9236第10章C语言涉及的其他知识238 10.1共用体238 10.1.1共用体类型的声明238 10.1.2共用体类型变量的定义238 10.1.3共用体变量的应用239 10.2枚举类型240 10.3自定义类型名typedef241 10.4位运算242 10.4.1位运算符和位运算243 10.4.2位运算应用244 10.4.3位段246 本章小结246 习题10247附录AASCII码表248附录BC语言中的关键字249附录C运算符的优先级和结合方向250附录D常用的C语言库函数251参考文献259