内容简介
第1章 程序设计概述
1.1 计算机软件
1.1.1 程序设计语言
1.1.2 程序设计
1.1.3 数据结构
1.1.4 算法
1.2 算法的表示方法
1.2.1 自然语言表示法
1.2.2 流程图表示法
1.2.3 N-S图表示法
1.2.4 伪代码表示法
1.3 程序设计方法
1.3.1 引言
1.3.2 结构化程序设计
1.3.3 面向对象的程序设计
1.3.4 面向服务的程序设计
1.4 小结
第2章 C语言基础
2.1 C语言的发展历程
2.2 C程序的特点及开发环境
2.2.1 C程序的组成及特点
2.2.2 C程序的风格
2.2.3 C程序的开发环境
2.3 C语言的基本标识
2.3.1 C语言基本语法成分
2.3.2 C语言数据类型
2.4 C语言的运算符与表达式
2.4.1 C语言的运算符
2.4.2 C语言的表达式
2.4.3 算术运算符与算术表达式
2.4.4 赋值运算符与赋值表达式
2.4.5 逗号运算符与逗号表达式
2.5 C语句和C程序结构
2.5.1 C语句
2.5.2 C程序结构
2.6 数据的输入、输出与简单程序设计
2.6.1 字符数据的输入输出
2.6.2 数据的格式化输入输出
2.6.3 简单的C程序设计
2.7 编译预处理命令
2.7.1 文件包含
2.7.2 宏定义
2.7.3 条件编译
2.7.4 编译优化
2.8 汇编与链接
2.8.1 汇编
2.8.2 链接
2.9 小结
第3章 程序的控制结构
3.1 关系运算与逻辑运算
3.1.1 关系运算
3.1.2 逻辑运算
3.2 分支结构
3.2.1 单分支结构
3.2.2 双分支结构
3.2.3 多分支结构
3.2.4 if语句的嵌套
3.2.5 条件运算符
3.3 循环结构
3.3.1 循环的引出
3.3.2 while循环
3.3.3 do-while循环
3.3.4 for循环
3.3.5 几种循环的比较
3.4 break和continue语句
3.4.1 break语句
3.4.2 continue语句
3.5 goto语句
3.6 小结
3.7 程序举例
第4章 数组
4.1 一维数组
4.1.1 一维数组的引出
4.1.2 一维数组的定义与引用
4.1.3 一维数组的初始化
4.1.4 一维数组的应用
4.2 二维数组
4.2.1 二维数组的引出
4.2.2 二维数组的定义与引用
4.2.3 二维数组的初始化
4.2.4 二维数组的应用
4.3 字符数组
4.3.1 字符数组的引出
4.3.2 字符数组的定义和使用
4.3.3 字符串
4.3.4 字符数组的应用
4.4 小结
4.5 程序举例
第5章 函数
5.1 函数的引出
5.2 函数定义与调用
5.2.1 函数的定义与调用
5.2.2 函数声明与函数原型
5.3 函数参数传递
5.3.1 简单变量作为函数参数
5.3.2 数组作为函数参数
5.3.3 函数定义与带参数的宏定义的区别
5.4 函数的嵌套调用
5.5 递归与分治算法
5.5.1 递归函数
5.5.2 分治算法
5.6 局部变量与全局变量
5.6.1 局部变量
5.6.2 全局变量
5.7 变量的存储类别
5.7.1 auto变量
5.7.2 static变量
5.7.3 register变量
5.7.4 extern变量
5.8 内部函数与外部函数
5.8.1 内部函数
5.8.2 外部函数
5.9 小结
5.1 0程序举例
第6章 指针
6.1 指针定义与使用
6.1.1 指针的引出
6.1.2 指针变量的定义
6.1.3 指针变量的使用
6.2 指针与函数
6.2.1 指针作为函数参数
6.2.2 函数返回指针
6.2.3 指向函数的指针
6.3 指针与数组
6.3.1 一维数组与指针
6.3.2 数组名作为函数参数
6.3.3 二维数组与指针
6.4 指针与字符串
6.5 指针数组与多级指针
6.5.1 指针数组的定义和引用
6.5.2 多级指针
6.5.3 指针数组作为main函数的形参
6.6 指针与动态内存分配
6.6.1 内存管理
6.6.2 void类型指针
6.6.3 动态内存分配和释放函数
6.7 指针的深层应用
6.7.1 指针访问特定内存区域
6.7.2 指针类型的强制转换
6.7.3 指针的安全问题
6.8 小结
6.9 程序举例
第7章 结构体与链表
7.1 结构体的引出
7.2 结构体变量
7.2.1 结构体变量的定义
7.2.2 结构体变量的引用和初始化
7.3 结构体数组
7.3.1 结构体数组的定义
7.3.2 结构体数组的初始化
7.3.3 结构体数组的使用
7.4 结构体类型的指针变量
7.4.1 指向结构体变量的指针
7.4.2 指向结构体数组的指针
7.5 结构体与函数
7.5.1 结构体变量作为函数参数
7.5.2 指向结构体变量的指针作为函数参数
7.5.3 函数返回值为结构体类型
7.6 链表
7.6.1 链表引出
7.6.2 链表的建立
7.6.3 链表的输出
7.6.4 链表的删除操作
7.6.5 链表的插入操作
7.7 共用体和枚举类型
7.7.1 共用体
7.7.2 枚举类型
7.8 类型定义符typedef的用法
7.9 小结
7.1 0程序举例
第8章 文件
8.1 文件概述
8.1.1 文件的分类
8.1.2 文件类型指针
8.1.3 文件操作的基本步骤
8.2 文件的打开与关闭
8.2.1 文件打开函数
8.2.2 文件关闭函数
8.3 文件的读写
8.3.1 字符读写函数
8.3.2 字符串读写函数
8.3.3 数据块读写函数
8.3.4 格式化读写函数
8.4 文件的定位
8.4.1 复位函数
8.4.2 随机移动函数
8.4.3 取当前位置的函数
8.5 文件检测函数
8.5.1 feof函数
8.5.2 ferror函数
8.5.3 clearerr函数
8.6 小结
8.7 程序举例
第9章 位运算
9.1 位运算符
9.2 位运算符的运算规则
9.2.1 按位与运算符
9.2.2 按位或运算符
9.2.3 按位异或运算符
9.2.4 按位取反运算符
9.2.5 左移运算符
9.2.6 右移运算符
9.2.7 位运算中的类型转换
9.2.8 位运算的复合赋值运算符
9.3 小结
9.4 程序举例
第10章 综合程序设计
10.1 电子万年历系统
10.1.1 系统设计要求
10.1.2 系统总体设计
10.1.3 源程序代码
10.1.4 程序运行结果
10.2 集合基本运算系统
10.2.1 系统设计要求
10.2.2 系统总体设计
10.2.3 源程序代码
10.2.4 程序运行结果
10.3 图书借阅管理系统
10.3.1 系统设计要求
10.3.2 系统总体设计
10.3.3 源程序代码
10.3.4 程序运行结果
附录A ASCⅡ码表
附录B C运算符的优先级与结合性
附录C常用标准库函数
C.1 stdio.h中的常用函数
C.2 math.h中的常用函数
C.3 stdlib.h中的常用函数
C.4 string.h中的常用函数
C.5 ctype.h中的常用函数
C.6 conio.h中的常用函数
C.7 time.h中的常用函数
参考文献