第1章 C语言开发环境简介
1.1 C语言发展历史
1.2 C语言的特点
1.3 C语言的广泛应用
1.4 Visual C++ 6.0开发环境概述
1.4.1 Visual C++ 6.0 开发环境安装
1.4.2 Visual C++ 6.0 开发环境介绍
1.5 Visual C++6.0下创建开发项目
1.5.1 Visual C++ 6.0下创建工程项目
1.5.2 Visual C++ 6.0 下C源代码创建
实训1.1--一个经典的C语言程序
1.6 疑难解答和上机题
1.6.1 疑难解答
1.6.2 上机题
第2章 基本数据类型
2.1 数据类型概述
2.2 进制换算
2.2.1 进位计数制概述
2.2.2 二进制与其他进制转换
2.2.3 八进制与其他进制转换
2.2.4 十六进制与其他进制转换
2.2.5 十进制与二进制的转换
2.2.6 机器数及其在内存中存储格式
2.3 常量
2.3.1 整型常量
2.3.2 实型常量
2.3.3 字符常量
2.3.4 字符串常量
2.4 变量
2.4.1 变量与内存结构
2.4.2 变量的定义
2.4.3 整型变量
2.4.4 实型变量
2.4.5 字符变量
2.5 枚举
2.5.1 枚举的定义
2.5.2 枚举变量的定义与使用
2.6 疑难解答和上机题
2.6.1 疑难解答
2.6.2 上机题
第3章 运算符和表达式
3.1 运算符与表达式的分类
3.1.1 运算符的分类
3.1.2 表达式的分类
3.2 运算符的优先级与结合性
3.3 赋值运算符与赋值表达式
3.4 算术运算符与算术表达式
3.4.1 算术运算符与数据类型
实训3.1--计算圆柱体体积
3.4.2 模除运算符
3.4.3 自增自减运算符
3.5 关系运算符与关系表达式
3.6 逻辑运算符与逻辑表达式
3.6.1 逻辑与(&&)
3.6.2 逻辑或(||)
3.6.3 逻辑非(!)
实训3.2--判断闰年
3.7 位运算符
实训3.3--交换两变量的值
3.8 条件运算符
实训3.4--分段函数计算
3.9 sizeof运算符
3.10 强制类型转换
3.11 疑难解答和上机题
3.11.1 疑难解答
3.11.2 上机题
第4章 C语言标准输入与输出
4.1 C语言标准库函数概述
4.2 格式输出函数printf
4.2.1 标准格式输出
4.2.2 格式输出控制
4.3 格式输入函数scanf
4.3.1 标准格式输入
4.3.2 格式输入控制
4.4 字符输入输出函数
4.4.1 putchar函数
4.4.2 getchar函数
实训4.1--输出及格率
4.5 疑难解答和上机题
4.5.1 疑难解答
4.5.2 上机题
第5章 分支结构程序设计
5.1 结构化程序设计思想
5.2 简单的if语句
5.2.1 if语句的定义
5.2.2 合理设计if语句
实训5.1--求一元二次方程的实根解
5.3 多分支if语句
5.3.1 if-else语句的结构
5.3.2 if-else语句的应用
5.3.3 if-else-if语句的结构及应用
5.4 嵌套if-else语句
5.4.1 嵌套if-else语句的定义
5.4.2 嵌套if-else语句的应用
实训5.2--求一元二次方程的复数根解
5.5 switch语句
5.5.1 switch语句的定义
5.5.2 break语句
5.5.3 switch语句的执行与应用
实训5.3--使用switch语句实现四则运算
5.6 嵌套switch语句
5.6.1 嵌套switch语句的定义
5.6.2 嵌套switch语句的执行与应用
5.7 疑难解答和上机题
5.7.1 疑难解答
5.7.2 上机题
第6章 循环结构程序设计
6.1 循环语句的提出
6.2 for循环语句
6.2.1 for语句的定义
6.2.2 for语句的执行
6.2.3 for语句的应用
6.3 for循环嵌套语句
6.3.1 for循环嵌套语句的定义与执行
6.3.2 for循环嵌套语句的应用
实训6.1--打印九九乘法表
实训6.2--打印三位数水仙花数
6.4 while循环语句
6.4.1 while循环语句的定义
6.4.2 while循环语句的应用
实训6.3--记录键盘输入字符数
6.5 do…while循环语句
6.5.1 do…while循环语句的定义
6.5.2 do…while循环语句的应用
6.6 goto语句
6.7 break语句和continue语句
6.7.1 break语句
6.7.2 continue语句
6.8 疑难解答和上机题
6.8.1 疑难解答
6.8.2 上机题
第7章 数组
7.1 一维数组
7.1.1 一维数组的定义
7.1.2 一维数组赋值与引用
7.1.3 一维数组的应用
实训7.1--数列排序
7.2 二维数组
7.2.1 二维数组的定义
7.2.2 二维数组的赋值与引用
7.2.3 二维数组的应用
实训7.2--学员平均成绩计算
实训7.3--输出杨辉三角
7.3 字符数组
7.3.1 字符数组的定义
7.3.2 字符数组的赋值与引用
7.3.3 字符数组与字符串
7.3.4 二维字符数组
7.4 疑难解答和上机题
7.4.1 疑难解答
7.4.2 上机题
第8章 函数
8.1 函数的定义
8.1.1 函数的分类
8.1.2 函数的定义
8.2 函数的调用与声明
8.2.1 函数的调用
实训8.1--计算数学分段函数
8.2.2 函数的声明
实训8.2--近似计算圆周率pi
8.2.3 函数的参数
8.3 局部变量与全局变量
8.3.1 局部变量
8.3.2 全局变量
8.4 函数的嵌套调用和递归
实训8.3--汉诺塔程序设计
8.5 数组作函数参数
8.6 疑难解答和上机题
8.6.1 疑难解答
8.6.2 上机题
第9章 指针
9.1 指针的引入
9.1.1 指针的定义
9.1.2 指针的引用
9.2 指针和地址
9.2.1 指针和地址的关系
9.2.2 指针和地址的区别
9.2.3 void指针和空指针
9.3 指针与数组
9.3.1 指针与数组首地址
9.3.2 指针与数组名的区别
实训9.1--指针转换数组中字母大小写
9.4 指针与函数
9.4.1 指针作函数参数
9.4.2 函数返回指针
9.4.3 指向函数的指针
9.5 指针与字符串
9.5.1 指针与字符串的关系
9.5.2 指针引用字符串
9.6 指针与二维数组
9.6.1 指针和二维数组的关系
9.6.2 指针数组
实训9.2--输出main函数参数值
9.7 内存分配
9.7.1 指针与内存分配
9.7.2 malloc函数
9.7.3 memset函数
9.7.4 free函数
实训9.3--指针实现简单月历计算
9.8 疑难解答与上机题
9.8.1 疑难解答
9.8.2 上机题
第10章 结构体与共用体
10.1 结构体的定义
10.2 结构体变量
10.2.1 结构体变量的定义
10.2.2 结构体变量的初始化
10.2.3 结构体变量的引用
10.2.4 结构体数组
实训10.1--身份证信息录入
10.2.5 结构体的嵌套
10.3 结构体指针
10.3.1 结构体指针的定义
10.3.2 结构体指针引用结构体成员
10.3.3 指向结构体数组的结构体指针
10.4 结构体变量的内存分配
10.4.1 动态分配结构体内存
10.4.2 结构体在内存中的存储结构
10.5 结构体指针作函数参数
10.5.1 结构体指针作函数参数的定义
10.5.2 结构体指针作函数参数的应用
10.6 共用体的定义
10.6.1 共用体的定义
10.6.2 共用体变量的定义与应用
10.7 共用体的内存结构
实训10.2--教师学生信息卡设计
10.8 疑难解答和上机题
10.8.1 疑难解答
10.8.2 上机题
第11章 链表
11.1 什么是链表
11.2 结构体实现单链表
11.2.1 单链表结点的结构体实现
11.2.2 单链表的结构体实现
11.3 结构体实现双向链表
11.3.1 双向链表结点的结构体实现
11.3.2 双向链表结点的内存分配
11.4 链表结点的插入与删除
11.4.1 单链表结点的插入
11.4.2 双向链表结点的插入
11.4.3 单链表结点的删除
11.4.4 双向链表结点的删除
实训11.1--新员工录入员工信息表
11.5 疑难解答和上机题
11.5.1 疑难解答
11.5.2 上机题
第12章 编译预处理
12.1 宏定义
12.1.1 什么是宏定义
12.1.2 宏定义的应用
实训12.1--程序不同Log的打印
12.1.3 宏定义的终止
12.2 文件包含
12.2.1 头文件包含
实训12.2--银行卡信息录入
12.2.2 头文件中的函数声明
12.3 条件编译
12.3.1 #if…#else和#endif命令
12.3.2 #ifdef…#endif和#ifndef…#endif命令
12.4 疑难解答和上机题
12.4.1 疑难解答
12.4.2 上机题
第13章 文件
13.1 文件和文件指针
13.1.1 流和文件
13.1.2 文件指针
13.2 文件的打开和关闭
13.2.1 文件的打开
13.2.2 文件的关闭
13.3 文件的读写
13.3.1 字符处理函数fgetc和fputc
实训13.1--建立readme文件
13.3.2 字符串处理函数fgets和fputs
13.3.3 数据段处理函数fread和fwrite
实训13.2--项目信息录入与输出
13.3.4 标准格式读写函数fprintf和fscanf
13.4 文件的定位
13.5 疑难解答和上机题
13.5.1 疑难解答
13.5.2 上机题
第14章 C语言标准数学库函数
14.1 平方根计算函数sqrt
14.2 求指数函数exp和pow
14.2.1 指数函数exp
14.2.2 指数函数pow
14.3 取对数函数log和log10
14.3.1 自然对数函数log
14.3.2 10为底的对数函数log10
14.4 绝对值函数abs和fabs
14.4.1 绝对值函数abs
14.4.2 绝对值函数fabs
14.5 三角函数
14.5.1 正弦函数sin和asin
14.5.2 其他三角函数
14.6 取整函数floor和ceil
14.6.1 取整函数floor
14.6.2 取整函数ceil
14.7 疑难解答和上机题
14.7.1 疑难解答
14.7.2 上机题
第15章 字符串处理
15.1 字符串拷贝函数strcpy
15.1.1 库函数strcpy
15.1.2 自定义函数strcpy
15.2 字符串链接与比较函数strcat和strcmp
15.2.1 字符串链接函数strcat
15.2.2 字符串比较函数strcmp
15.3 字符串长度与查找函数strlen和strchr
15.3.1 字符串长度计算函数strlen
15.3.2 字符串查找函数strchr
15.4 字符串输入输出函数gets和puts
15.4.1 字符串输入函数gets
15.4.1 字符串输出函数puts
15.5 其他字符串处理函数
15.5.1 特定字符串比较函数strcmp
15.5.2 字符串重设函数strnset
15.5.3 字符串子串查找函数strstr
实训15.1--文章中字符串查找与替换
15.6 疑难解答和上机题
15.6.1 疑难解答
15.6.2 上机题
第16章 C语言调试
16.1 C语言开发入门
16.1.1 注释的编写
16.1.2 代码风格
16.2 C语言单步调试与跟踪
16.3 C语言断点调试与跟踪
16.3.1 设置调试断点
16.3.2 断点调试
16.4 查看动态内存
实训16.1--代码风格设计
16.5 疑难解答和上机题
16.5.1 疑难解答
16.5.2 上机题
第17章 软件测试
17.1 软件测试概述
17.1.1 什么是软件测试
17.1.2 软件测试模型、分类和流程
17.2 搭建软件测试环境
17.2.1 分析被测软件
17.2.2 搭建软件测试环境
17.3 软件测试过程
17.3.1 函数级软件测试
17.3.2 模块级软件测试
17.4 疑难解答和上机题
17.4.1 疑难解答
17.4.2 上机题
第18章 C语言常用算法
18.1 什么是算法
18.2 排序算法
18.2.1 起泡排序
18.2.2 选择排序
18.2.3 合并排序
18.2.4 快速排序
18.3 查找算法
18.3.1 顺序查找算法
18.3.2 折半查找算法
18.4 二叉树
18.4.1 二叉树的结构
18.4.2 C语言实现简单的二叉树
18.4.3 二叉树的简单操作
实训18.1--合并两个有序数组
18.5 疑难解答和上机题
18.5.1 疑难解答
18.5.2 上机题
第19章 C语言应用实例
19.1 C语言巧解问题实例
19.1.1 求1到1000之内的素数
19.1.2 巧解古代百钱买百鸡问题
19.1.3 巧解换钱币问题
19.1.4 求1-20000之间的平方回文数
19.1.5 验证卡布列克常数
19.2 C语言应用实例--计算数学公式
19.2.1 C语言实现三角函数sinx逼近
19.2.2 C语言实现三角函数cosx逼近
19.2.3 C语言计算排列组合
19.3 C语言编写万年历
19.3.1 万年历的实现流程
19.3.2 万年历程序设计流程
19.3.3 万年历程序编写
19.3.4 结果验证与代码完善
19.4 疑难解答和上机题
19.4.1 疑难解答
19.4.2 上机题