本书分基础篇、进阶篇和提高篇。基础篇包括第1章至第3章,主要介绍利用整型变量进行简单的控制结构程序设计;进阶篇包括第4章至第9章,主要阐述C语言程序设计的基础知识、结构化程序设计相关内容;提高篇包括第10章至第13章,主要介绍一些复杂的数据组织结构,为读者进一步编写复杂程序打下基础。本书每章都附有习题,并提供免费配套的电子教案。
按照学生认知进度安排内容,分为基础篇、进阶篇和提高篇。
目 录
第一篇 基 础 篇
第1章 C语言概述
1.1 C语言的发展及特点
1.2 简单的C程序设计
1.2.1 认识C语言程序
1.2.2 数据类型、常量与变量
1.2.3 数据输入/输出在C语言中的实现
1.3 C程序的基本结构和书写风格
1.3.1 C程序的基本结构
1.3.2 C程序的书写风格
1.4 C程序的上机步骤和Visual C++ 6.0的基本用法
1.4.1 C程序的上机步骤
1.4.2 Microsoft Visual C++ 6.0的基本用法
小结
目 录
第一篇 基 础 篇
第1章 C语言概述
1.1 C语言的发展及特点
1.2 简单的C程序设计
1.2.1 认识C语言程序
1.2.2 数据类型、常量与变量
1.2.3 数据输入/输出在C语言中的实现
1.3 C程序的基本结构和书写风格
1.3.1 C程序的基本结构
1.3.2 C程序的书写风格
1.4 C程序的上机步骤和Visual C++ 6.0的基本用法
1.4.1 C程序的上机步骤
1.4.2 Microsoft Visual C++ 6.0的基本用法
小结
习题1
第2章 简单程序设计之一
2.1 顺序结构程序设计
2.1.1 算术运算符及其表达式
2.1.2 顺序结构程序设计举例
2.2 选择结构程序设计
2.2.1 关系运算符及其表达式
2.2.2 逻辑运算符及其表达式
2.2.3 if分支结构
2.2.4 switch多分支结构
2.3 简单循环结构程序设计
2.3.1 为什么使用循环结构
2.3.2 while语句和do-while语句
2.3.3 for语句
2.3.4 几种循环的比较
2.4 break和continue语句在循环中的应用
小结
习题2
第3章 一维数组
3.1 为什么要使用数组
3.2 一维数组
3.2.1 一维数组的定义
3.2.2 一维数组元素的引用
3.2.3 一维数组的初始化
3.2.4 一维数组应用举例
3.3 程序调试
3.3.1 用输出语句调试程序
3.3.2 利用VC调试工具调试C程序
3.4 算法及算法描述
3.4.1 算法的概念及特征
3.4.2 算法的描述
3.4.3 用计算机语言表示算法
小结
习题3
第二篇 进 阶 篇
第4章 C语言基本语法
4.1 C语言的数据类型
4.2 整型数据
4.2.1 整型常量
4.2.2 整型变量
4.3 实型数据
4.3.1 实型常量
4.3.2 实型变量
4.4 字符型数据
4.4.1 字符型常量
4.4.2 字符型变量
4.4.3 字符数据的输入/输出
4.5 格式化输入/输出
4.5.1 格式化输出函数printf()
4.5.2 格式化输入函数scanf()
4.6 数据类型转换
4.6.1 自动类型转换
4.6.2 强制类型转换
4.7 运算符与表达式
小结
习题4
第5章 简单程序设计之二
5.1 嵌套循环结构程序设计
5.2 数学计算问题
5.3 枚举问题
5.4 查找问题
5.5 排序问题
5.6 菜单设计
小结
习题5
第6章 二维数组和字符数组
6.1 二维数组
6.1.1 二维数组的定义
6.1.2 二维数组元素的引用
6.1.3 二维数组的初始化
6.1.4 程序举例
6.2 字符数组
6.2.1 字符数组的定义及初始化
6.2.2 字符串的输入/输出
6.2.3 常用的字符串处理函数
6.2.4 应用举例
小结
习题6
第7章 函数
7.1 认识函数
7.1.1 模块化程序设计
7.1.2 函数的概念和分类
7.2 函数的定义及调用
7.2.1 函数的定义
7.2.2 函数的调用
7.3 函数参数和返回值
7.3.1 形式参数和实际参数
7.3.2 函数的返回值
7.4 函数的声明
7.5 函数的嵌套与递归
7.5.1 函数的嵌套
7.5.2 函数的递归调用
7.6 数组名作为函数的参数
7.6.1 实参到形参的数据传递方式
7.6.2 数组作为函数的参数
7.7 变量的作用域及存储特性
7.7.1 变量的作用域
7.7.2 变量的存储特性
7.8 内部函数和外部函数
7.8.1 内部函数
7.8.2 外部函数
小结
习题7
第8章 指针
8.1 指针类型
8.1.1 变量的地址和变量的值
8.1.2 变量的直接访问和间接访问
8.1.3 指针变量的定义
8.1.4 指针变量的引用
8.1.5 空指针和void型指针
8.2 指针运算
8.2.1 指针的赋值
8.2.2 指针的加减运算
8.2.3 指针的比较
8.3 指针变量作为函数参数
8.3.1 在函数中处理主调函数中的变量
8.3.2 利用指针将函数处理结果带回主调函数
8.4 用指针访问一维数组
8.4.1 指针与一维数组的关系
8.4.2 指向数组的指针变量的定义
8.4.3 利用指针访问数组
8.4.4 动态申请存储空间
8.5 数组名作为函数的参数
8.6 字符串与指针
小结
习题8
第9章 编译预处理和位运算
9.1 宏定义
9.1.1 不带参数的宏定义
9.1.2 带参数的宏定义
9.2 文件包含
9.3 条件编译
9.4 位运算
9.4.1 位运算和位运算符
9.4.2 位段
小结
习题9
第三篇 提 高 篇
第10章 指针的高级应用
10.1 指针与函数
10.1.1 指针型函数
10.1.2 指向函数的指针
10.2 用指针访问二维数组
10.2.1 二维数组元素的地址
10.2.2 指向二维数组元素的指针
10.2.3 指向二维数组中一行元素的指针
10.2.4 指针数组
10.2.5 二维数组名作函数参数
10.3 二级指针
10.3.1 多级指针的概念
10.3.2 二级指针的定义及使用
10.4 指针数组作main函数的形参
小结
习题10
第11章 结构体、共同体和枚举类型
11.1 结构体类型
11.1.1 结构体类型的认识
11.1.2 结构体类型的定义
11.2 结构体变量
11.2.1 结构体变量的定义
11.2.2 结构体变量的存储模式
11.2.3 结构体变量的引用
11.2.4 结构体变量的基本操作
11.3 结构体数组
11.3.1 结构体数组的定义和引用
11.3.2 结构体数组的初始化
11.4 结构体类型指针
11.4.1 结构体指针的定义
11.4.2 通过结构体指针引用结构体变量
11.4.3 结构体指针作函数参数
11.5 链表
11.5.1 链表概述
11.5.2 链表的基本操作
11.5.3 链表综合应用举例
11.6 共用体
11.6.1 共用体的概念
11.6.2 共用体类型的应用
11.7 枚举
11.7.1 枚举类型及枚举变量的定义
11.7.2 枚举类型的应用
11.8 类型定义
小结
习题11
第12章 文件
12.1 文件概述
12.1.1 文本文件和二进制文件
12.1.2 缓冲文件系统和非缓冲文件系统
12.2 文件类型指针
12.2.1 文件类型指针的定义
12.2.2 设备文件
12.3 文件的打开和关闭
12.3.1 文件的打开fopen()
12.3.2 文件的关闭fclose()
12.4 文件读/写操作
12.4.1 字符读/写函数:fgetc()和fputc()
12.4.2 字符串读/写函数:fgets()和fputs()
12.4.3 数据块读/写函数:fread()和fwrite()
12.4.4 格式化读/写函数fscanf()和fprintf()
12.5 文件定位函数
12.5.1 文件指针的重置函数rewind()
12.5.2 取文件的当前位置函数ftell()
12.5.3 文件读/写指针定位函数fseek()
12.6 出错检测函数
12.6.1 ferror()函数
12.6.2 clearerr()函数
小结
习题12
第13章 C程序应用举例
13.1 Josephus问题
13.2 字符串处理问题
13.3 学生信息管理应用程序
习题13
附录A 常用字符与ASCII代码对照表
附录B 运算符与结合性
附录C C语言中的关键字
附录D C语言库函数
参考文献