本书是学习C语言程序设计的实用教材,主要内容包括C语言概述、数据类型及其表达式、3种基本结构的程序设计、数组、函数、构造数据类型、指针、编译预处理命令、文件、位运算以及字符屏幕和图形函数等。本书根据教育部计算机课程教学指导委员会颁布的大纲要求,安排了具有很强的实用性和可操作性的教学内容。
本书适合作为高等学校相关课程或计算机等级考试(二级)的教材,也可作为高职高专、高等院校成人教育的教材或教学参考书。
本书共分13章,全面介绍了在Turbo
C环境下C语言的主要内容,包括基本概念、数据类型、表达式、控制语句、数组、函数、结构体、共用体、指针、编译预处理命令、文件、位运算以及字符屏幕和图形函数等内容,并精选了一部分全国计算机等级考试题(二级C语言程序设计)充实到教材中。程序设计是一门实践性很强的课程,在掌握基本概念的基础上,要学会编程并进行上机调试。为了满足教学和实验要求,作者还编写了与本书配套的(《c语言程序设计习题解答与上机指导(第二版)》供读者学习时使用。
第1章 C语言概述
1.1 概述
1.1.1 C语言及其特点
1.1.2 C语言程序的组成和结构特点
1.2 C语言的基本符号
1.2.1 基本符号集
1.2.2 标识符
1.3 算法及其描述方法
1.3.1 算法的概念
1.3.2 算法的描述方法
1.4 程序设计方法简介
1.5 C程序的开发环境
1.5.1 Turbo C 2.0集成开发环境
1.5.2 Mierosoft Visual C++ 6.0的集成开发环境
本章小结
习题一
第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.3.5 数据类型
2.4 运算符和表达式
2.4.1 运算符和表达式
2.4.2 赋值运算
2.4.3 算术运算
2.4.4 逗号运算
2.4.5 关系运算
2.4.6 逻辑运算
2.4.7 条件运算
2.4.8 运算符的结合律和优先级
本章小结
习题二
第3章 顺序结构的程序设计
3.1 顺序结构的语句
3.1.1 表达式语句、空语句和赋值语句
3.1.2 复合语句
3.2 字符数据的输入和输出
3.2.1 字符输入函数getchar()
3.2.2 字符输出函数putchar()
3.3 格式输入函数scanf()
3.4 格式输出函数printf()
本章小结
习题三
第4章 选择结构的程序设计
4.1 条件选择结构
4.2 条件分支的嵌套
4.3 开关选择结构
4.4 无条件选择结构
本章小结
习题四
第5章 循环结构的程序设计
5.1 用goto语句构成循环结构
5.2 while语句
5.3 do…while语句
5.4 for语句
5.5 循环嵌套结构
5.6 循环结构中使用break和eontinue语句
5.7 循环语句之间的差异
5.8 程序举例
本章小结
习题五
第6章 数组
6.1 数组和数组元素
6.2 一维数组
6.3 多维数组
6.4 字符数组
本章小结
习题六
第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.6 局部变量和全局变量
7.6.1 局部变量
7.6.2 全局变量
7.7 存储类型和变量的作用域
7.7.1 数据在内存中的存储
7.7.2 变量的存储类型
7.7.3 变量的作用域和生存期
本章小结
习题七
第8章 构造数据类型
8.1 结构体
8.1.1 结构体类型定义及结构体类型变量的说明
8.1.2 结构体类型变量的使用
8.1.3 结构体变量的初始化
8.1.4 结构体数组
8.1.5 结构体和函数
8.2 共用体
8.2.1 共用体类型的定义和共用体变量的说明
8.2.2 共用体成员的使用
8.3 枚举类型
8.3.1 枚举类型的定义和枚举变量的说明
8.3.2 枚举类型数据的使用
8.4 用typedef定义类型
本章小结
习题八
第9章 指针
9.1 指针的概念
9.1.1 变量和地址
9.1.2 指针变量和指针的类型
9.2 变量的指针与指针变量
9.2.1 指针变量的定义及使用
9.2.2 指针变量的初始化
9.2.3 指针运算
9.3 指针与数组
9.3.1 指向数组的指针
9.3.2 字符指针与字符数组
9.3.3 多级指针及指针数组
9.3.4 指针与多维数组
9.4 指针与函数
9.4.1 函数参数为指针
9.4.2 函数的返回值为指针
9.4.3 指向函数的指针
9.4.4 命令行参数
9.5 指针与结构体
9.5.1 吉构体指针与指向结构体数组的指针
9.5.2 结构体指针与函数
9.6 链表
9.6.1 链表和动态存储分配
9.6.2 用包含指针项的结构体变量构成结点
9.6.3 用于动态存储分配的函数
9.6.4 链表应用举例
本章小结
习题九
第10章 编译预处理命令
10.1 宏定义
10.1.1 不带参数的宏定义
10.1.2 带参数的宏定义
10.2 文件包含
10.3 条件编译
本章小结
习题十
第11章 文件
11.1 C语言文件概述
11.1.1 文本文件和二进制文件
11.1.2 缓冲文件系统和非缓冲文件系统
11.1.3 标准输入/输出库函数
11.1.4 标准设备文件及I/O改向
11.2 缓冲型文件输入/输出系统
11.2.1 文件(file)类型结构及文件指针
11.2.2 文件的打开与关闭
11.2.3 文件的读写
11.2.4 文件的定位
11.2.5 出错的检测
11.3 非缓冲型文件输入/输出系统
本章小结
习题十一
第12章 位运算
12.1 基本位运算符与位运算
12.1.1 按位与运算符(&)
12.1.2 按位或运算符(1)
12.1.3 按位异或运算符(^)
12.1.4 按位取反运算符(~)
12.2 位移运算符与位移运算
12.2.1 左移运算符(<>)
12.3 位运算的复合赋值运算符
12.4 位段
12.4.1 位段的定义
12.4.2 位段的引用
12.5 位运算应用举例
本章小结
习题十二
第13章 字符屏幕和图形函数
13.1 显示器及其工作模式
13.2 字符屏幕函数
13.2.1 窗口
13.2.2 基本输入/输出函数
13.2.3 屏幕操作函数
13.2.4 字符属性控制函数
13.2.5 字符屏幕状态函数
13.2.6 程序举例
13.3 Turbo C的图形函数
13.3.1 图形模式的初始化
13.3.2 屏幕颜色的设置和清屏函数
13.3.3 基本图形函数
13.3.4 封闭图形的填充
13.3.5 有关图形视口和图形操作函数
13.3.6 图形模式下的文本输出
13.3.7 独立图形运行程序的建立
本章小结
习题十三
附录A C常用库函数
附录B ASCll码表
参考文献