本书为普通高等教育“十一五”国家级规划教材、国家精品课程教材,由12章组成。其主要内容包括:C/C++语言程序设计概述,C语言程序设计基础(包括:基本数据类型、基本输入与输出函数以及运算符和表达式),控制结构,数组,指针,函数,编译预处理与变量的存储类型,文件,结构体与共用体,图形程序设计基础,C++语言程序设计基础,查找与排序。每章后附学习指导和一定量的编程练习题。全书内容安排紧凑,简明扼要,由浅入深,实用性强。
本书的辅教材《C/C++程序设计实验指导与测试(第4版)》中提供了其他形式的测试题及解答,作为主教材习题的补充,将为学生编程能力的提高和课后自学提供更好的帮助。
本书可作为大专院校非计算机专业本科生、研究生的相关课程的教学用书,也可作为计算机专业学生学习C/C++程序设计的教材,同时还可供自学者参考。
目录
- 版权信息
- 第4版前言
- 第1章 C/C++语言程序设计概述
- 1.1 引言
- 1.2 C/C++语言的特点
- 1.3 程序与程序设计
- 1.4 算法及其表示方法
- 1.4.1 算法的特性与要求
- 1.4.2 算法描述
- 1.5 简单C程序的基本结构
- 1.5.1 两个简单程序实例
- 1.5.2 C/C++程序的基本构成
- 1.6 C程序的调试
- 本章学习指导
- 习题1
- 第2章 C语言程序设计基础
- 2.1 问题的提出
- 2.2 常量
- 2.3 变量
- 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 位运算符
- 2.4.9 其他运算符
- 2.5 基本输入/输出函数
- 2.5.1 格式输入函数scanf()
- 2.5.2 格式输出函数printf()
- 2.5.3 字符输入函数getchar()
- 2.5.4 字符输出函数putchar()
- 本章学习指导
- 习题2
- 第3章 控制结构
- 3.1 问题的提出
- 3.2 C语句和程序结构
- 3.2.1 C语句概述
- 3.2.2 C程序基本结构
- 3.3 条件选择结构
- 3.3.1 if选择结构
- 3.3.2 if-else选择结构
- 3.3.3 if-else的嵌套结构
- 3.4 多分支选择结构
- 3.5 循环控制结构
- 3.5.1 while语句
- 3.5.2 do-while语句
- 3.5.3 for语句
- 3.5.4 循环语句的嵌套
- 3.6 转向语句
- 3.6.1 break语句
- 3.6.2 continue语句
- 3.6.3 goto语句
- 本章学习指导
- 习题3
- 第4章 数组
- 4.1 问题的提出
- 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.4.1 字符串与一维字符数组
- 4.4.2 二维字符数组
- 4.4.3 字符数组的输入和输出
- 4.4.4 字符串处理函数
- 本章学习指导
- 习题4
- 第5章 指针
- 5.1 问题的提出
- 5.2 指针和地址
- 5.3 指针变量的定义和引用
- 5.3.1 指针变量的定义和初始化
- 5.3.2 指针变量的引用
- 5.4 指针变量的运算
- 5.4.1 指针变量的赋值运算
- 5.4.2 指针的移动
- 5.4.3 两个指针变量相减
- 5.4.4 两个指针变量的比较
- 5.5 指针与数组
- 5.5.1 指向一维数组的指针变量
- 5.5.2 二维数组与指针变量
- 5.5.3 通过行指针变量引用二维数组元素
- 5.6 指针与字符串
- 5.7 二级指针与指针数组
- 5.7.1 二级指针
- 5.7.2 指针数组
- 5.8 用于动态内存分配的函数
- 本章学习指导
- 习题5
- 第6章 函数
- 6.1 问题的提出
- 6.2 函数及其分类
- 6.3 函数的定义
- 6.4 函数原型
- 6.5 函数调用
- 6.5.1 函数调用的一般形式
- 6.5.2 传值调用
- 6.5.3 传址调用
- 6.5.4 指向函数的指针
- 6.5.5 返回指针的函数
- 6.6 函数的嵌套调用和递归调用
- 6.6.1 函数的嵌套调用
- 6.6.2 函数的递归调用
- 6.7 命令行参数
- 6.8 变量的作用域和存储类型
- 本章学习指导
- 习题6
- 第7章 文件
- 7.1 问题的提出
- 7.2 文件的基本概念
- 7.3 文件的打开与关闭
- 7.4 文件的读/写
- 7.4.1 按字符方式读/写文件
- 7.4.2 按行方式读/写文件
- 7.4.3 按格式读/写文件
- 7.4.4 按块读/写文件
- 7.5 文件的定位与测试
- 7.5.1 文件的顺序存取与随机存取
- 7.5.2 检测文件结束函数feof()
- 7.5.3 反绕函数rewind()
- 7.5.4 移动文件位置指针函数fseek()
- 7.5.5 测定文件位置指针当前指向的函数ftell()
- 本章学习指导
- 习题7
- 第8章 结构体与共用体
- 8.1 问题的提出
- 8.2 结构类型
- 8.2.1 结构类型的定义
- 8.2.2 结构变量的定义
- 8.2.3 结构成员的引用
- 8.2.4 结构变量的初始化
- 8.3 结构数组
- 8.3.1 结构数组的定义和初始化
- 8.3.2 结构数组元素的引用
- 8.4 结构指针变量
- 8.4.1 结构指针变量的定义与初始化
- 8.4.2 指向结构变量的指针变量
- 8.4.3 指向结构数组的指针变量
- 8.5 结构体与函数
- 8.5.1 结构变量作为函数的参数
- 8.5.2 结构变量的地址作为函数的参数
- 8.5.3 结构数组作为函数的参数
- 8.6 共用体
- 8.6.1 共用体的定义和引用
- 8.6.2 共用体与结构体的嵌套使用
- 8.7 枚举
- 8.8 用typedef定义类型
- 8.9 链表
- 8.9.1 单向链表
- 8.9.2 链表的建立
- 8.9.3 链表的插入和删除
- 本章学习指导
- 习题8
- 第9章 图形程序设计基础
- 9.1 问题的提出
- 9.2 图形适配器的基本工作方式
- 9.3 常用图形函数
- 9.4 图形程序举例
- 本章学习指导
- 习题9
- 第10章 C++程序设计基础
- 10.1 引言
- 10.2 C++程序结构
- 10.3 C++语言的输入/输出流
- 10.4 引用
- 10.5 函数的重载
- 10.6 带默认参数的函数
- 10.7 C++新增运算符
- 10.8 const修饰符
- 10.9 类和对象
- 10.9.1 类和对象的定义
- 10.9.2 构造函数和析构函数
- 10.9.3 类的友元
- 10.9.4 this指针
- 10.10 重载
- 10.10.1 类成员函数重载
- 10.10.2 类构造函数重载
- 10.10.3 运算符重载
- 10.11 继承
- 10.11.1 基类与派生类
- 10.11.2 public继承
- 10.11.3 private继承
- 10.11.4 protected继承
- 10.11.5 多继承
- 10.11.6 派生类的构造函数和析构函数
- 10.12 多态性和虚拟函数
- 10.12.1 多态性
- 10.12.2 虚拟函数
- 10.12.3 虚拟析构函数
- 本章学习指导
- 习题10
- 附录A 常用字符与代码对照表
- 附录B C语言中的关键字
- 附录C 运算符的优先级与结合性
- 参考文献