目录Contents 第1章C语言概述1 1.1C语言简介1 1.1.1C语言的产生和发展1 1.1.2C程序的构成2 1.1.3C语言的主要特点4 1.2C程序的上机步骤5 1.3小结7 习题18 第2章C语言的数据类型9 2.1数据类型概述9 2.2常量10 2.2.1整型常量10 2.2.2浮点型常量10 2.2.3字符常量10 2.2.4字符串常量11 2.2.5符号常量11 2.3变量12 2.3.1标识符12 2.3.2整型变量12 2.3.3浮点型变量14 2.3.4字符型变量14 2.3.5字符串的存储方式15 2.4数据的输入/输出16 2.4.1引例16 2.4.2格式输入/输出函数16 2.4.3字符输入/输出函数22 2.4.4应用举例232.5小结24 习题224 第3章运算符与表达式27 3.1运算符与表达式概述27 3.2基本算术运算符与算术表达式28 3.3赋值运算符与赋值表达式29 3.4不同数据类型的转换31 3.4.1自动转换31 3.4.2强制类型转换33 3.5自增、自减运算符34 3.6逗号运算符与逗号表达式34 3.7小结35 习题335 ◆C语言程序设计教程目录第4章程序的流程控制37 4.1程序的基本结构37 4.2选择结构38 4.2.1关系运算符和关系表达式38 4.2.2逻辑运算符和逻辑表达式39 4.2.3if语句40 4.2.4switch语句43 4.2.5条件表达式45 4.2.6选择结构程序举例46 4.3循环结构47 4.3.1while语句48 4.3.2dowhile语句50 4.3.3for语句53 4.3.4break语句和continue语句57 4.4常用算法举例59 4.5小结64 习题465 第5章数组68 5.1数组的概念68 5.1.1引例68 5.1.2数组的概念69 5.2一维数组70 5.2.1一维数组的定义和引用70 5.2.2一维数组元素的赋值71 5.2.3一维数组常用算法举例72 5.3二维数组76 5.3.1二维数组的定义76 5.3.2二维数组的初始化77 5.3.3二维数组常用算法举例78 5.4字符数组81 5.4.1字符数组与字符串81 5.4.2字符串的输入/输出82 5.4.3字符串处理函数83 5.4.4字符串应用举例86 5.5小结91 习题592 第6章函数95 6.1C程序的模块化95 6.2函数的定义96 6.2.1无参函数的定义96 6.2.2有参函数的定义98 6.3函数的调用99 6.3.1实参和形参99 6.3.2return语句101 6.3.3被调函数的类型声明103 6.4递归函数103 6.5数组作为函数参数105 6.5.1数组元素作实参105 6.5.2数组名作函数参数106 6.6变量的存储类别114 6.6.1变量的作用域与生存期115 6.6.2变量的存储类别115 6.7小结119 习题6120 第7章编译预处理123 7.1宏定义123 7.1.1无参宏定义123 7.1.2有参宏定义125 7.2文件包含126 7.3小结126 习题7127 第8章指针129 8.1变量、地址与指针概述129 8.2指针变量131 8.2.1指针变量的声明131 8.2.2指针变量的使用131 8.2.3指针运算134 8.2.4二级指针与多级指针136 8.3指针与函数137 8.3.1函数参数的传值与传地址137 8.3.2指针作为函数参数138 8.3.3指针作为函数返回值141 8.3.4指向函数的指针141 8.4指针与数组143 8.4.1一维数组与指针144 8.4.2二维数组与指针149 8.4.3指针与字符串153 8.4.4指针数组158 8.5main函数的参数160 8.6小结162 习题8163 第9章结构体、共用体与枚举型数据168 9.1结构体概述168 9.1.1结构体类型概述168 9.1.2结构体类型定义169 9.2结构体变量170 9.2.1结构体变量的声明170 9.2.2结构体的使用172 9.3结构体与函数174 9.4结构体与数组174 9.4.1结构体数组的声明175 9.4.2结构体数组的初始化175 9.4.3结构体数组的使用176 9.5结构体与指针178 9.5.1指向结构体的指针178 9.5.2结构体数组与指针180 9.5.3结构体指针变量作函数参数181 9.6结构体与链表185 9.6.1链表的概念185 9.6.2动态分配内存186 9.6.3用结构体实现链表188 9.6.4链表的操作189 9.7共用体195 9.7.1共用体概述195 9.7.2共用体类型的定义195 9.7.3共用体变量的声明196 9.7.4共用体的使用197 9.8枚举类型数据198 9.8.1枚举类型的定义198 9.8.2枚举类型变量的声明198 9.8.3枚举类型变量的使用198 9.9类型定义符typedef199 9.10位运算200 9.10.1位运算符201 9.10.2位段203 9.10.3举例204 9.11小结205 习题9206 第10章文件208 10.1文件概述208 10.1.1文件类型208 10.1.2缓冲文件系统和非缓冲文件系统209 10.1.3文件指针209 10.2打开/关闭文件210 10.2.1打开文件函数210 10.2.2关闭文件函数211 10.3顺序读写文件212 10.3.1输入/输出字符213 10.3.2输入/输出字符串215 10.3.3格式化输入/输出217 10.3.4输入/输出数据块219 10.4定位读写文件221 10.4.1fseek函数221 10.4.2rewind函数222 10.4.3ftell函数222 10.5文件应用举例223 10.6小结227 习题10227 附录A标准ASCII码表230 附录BC语言常用关键字232 附录C运算符优先级与结合性233 附录DC语言库函数236 D.1数学函数236 D.2字符函数和字符串函数237 D.3输入/输出函数238 D.4动态存储分配函数240 D.5转换函数240 D.6图形图像函数241