C/C++程序设计(第2版)(21世纪高等学校教材)
分類: 图书,教材教辅与参考书,
品牌: 拉斯金·邦德
基本信息·出版社:高等教育出版社
·页码:369 页
·出版日期:2009年09月
·ISBN:9787040280548
·条形码:9787040280548
·包装版本:第2版
·装帧:平装
·开本:16
·正文语种:中文
·丛书名:21世纪高等学校教材
产品信息有问题吗?请帮我们更新产品信息。
内容简介《C/C++程序设计(第2版)》为《C/C++程序设计》第2版,全面地讲述了C/C++语言程序设计的基础知识、程序设计方法和解决实际问题的技巧。全书内容丰富、结构精练、讲解深入浅出、实用性强,并将知识点融入各章典型例题中,同时也注重培养学习者的计算机程序设计能力和良好的程序设计习惯。
全书共分为12章,主要内容包括:C语言概述、基本程序设计、程序控制结构、数组、函数、指针、结构体与共用体、位运算、文件、C++基础知识、面向对象程序设计及应用程序实例等。每章精选了多种类型的案例和习题,并有配套的《C/C++程序设计实验指导与题解》(第2版)一书,帮助学习者开阔思路和提高程序设计能力。
《C/C++程序设计(第2版)》可作为高等院校理工科各专业C/C++程序设计课程教材,也可作为计算机等级考试的参考用书。
《C/C++程序设计(第2版)》电子课件及案例源代码等相关教学资源均可以从中国高校计算机课程网上下载,网址为:http://computer.crlcourse.com。
编辑推荐《C/C++程序设计(第2版)》:根据教学指委“白皮书”中“计算机程序设计基础”课程教学要求编写,内容取舍合理,讲述深入浅出,注重把知识点融入典型案例中,精选200多个例题,便于读者理解主要知识点,含有300多道习题,益于读者练习提高,提供学生成绩档案管理系统程序开发实例,突出程序设计能力的培养,配有《C/C++程序设计实验指导与题解》(第2版),免费下载相关教学资源(电子教案、案例素材、程序源代码等)。
目录
第1章 C语言概述
1.1 程序与程序设计
1.1.1 程序的概念
1.1.2 程序设计语言
1.1.3 程序设计方法
1.2 C/C++语言简介
1.2.1 C/C++语言的由来
1.2.2 C语言的特点
1.3 C程序初识
1.3.1 C程序实例
1.3.2 C程序基本构成
1.3.3 程序编写规范与风格
1.4 C语言的语法
1.4.1 字符集
1.4.2 关键字
1.4.3 标识符
1.4.4 常量
1.4.5 运算符
1.4.6 分隔符
1.5 算法
1.5.1 算法的基本特征
1.5.2 算法的表示
1.6 C程序的编程环境与学习方法
1.6.1 C程序的实现过程
1.6.2 VC++6.0编程环境
1.6.3 学习C语言的方法
1.7 典型例题精解
本章 小结
习题1
第2章 基本程序设计
2.1 C语言数据类型
2.2 常量及其类型
2.2.1 整型常量
2.2.2 实型常量
2.2.3 字符常量
2.2.4 字符串常量
2.2.5 符号常量
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.4.6 运算的优先级与结合性
2.4.7 数据类型转换
2.5 数据的输入/输出
2.5.1 数据输入/输出概念
2.5.2 字符数据的输入/输出
2.5.3 格式输入/输出
2.6 典型例题精解
本章 小结
习题2
第3章 程序控制结构
3.1 顺序结构
3.1.1 C语言的语句
3.1.2 顺序结构程序设计
3.2 分支结构
3.2.1 if(if-else)语句
3.2.2 switch语句
3.3 循环结构
3.3.1 while语句
3.3.2 do-while语句
3.3.3 for语句
3.3.4 转移语句
3.3.5 循环的嵌套
3.4 典型例题精解
本章 小结
习题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.3.5 二维数组的应用
4.4 字符数组和字符串
4.4.1 字符数组的定义
4.4.2 字符数组的初始化
4.4.3 字符串的输入/输出
4.4.4 字符串处理函数
4.5 典型例题精解
本章 小结
习题4
第5章 函数
5.1 概述
5.1.1 函数的概念
5.1.2 函数的分类
5.2 函数的定义和调用
5.2.1 函数的定义
5.2.2 函数的调用
5.2.3 函数的原型声明
5.2.4 标准库函数
5.3 函数的参数及传递方式
5.3.1 形式参数和实际参数
5.3.2 变量作为函数参数
5.3.3 数组作为函数参数
5.4 函数的嵌套调用与递归调用
5.4.1 函数的嵌套调用
5.4.2 函数的递归调用
5.5 变量的作用域和存储类型
5.5.1 变量的生存期与作用域
5.5.2 变量的存储类型
5.5.3 内部函数与外部函数
5.6 编译预处理
5.6.1 宏定义
5.6.2 文件包含
5.6.3 条件编译
5.7 典型例题精解
本章 小结
习题5
第6章 指针
6.1 指针的基本概念
6.1.1 内存、地址和指针
6.1.2 指针变量的定义与初始化
6.1.3 指针的运算及引用
6.1.4 指针变量作为函数参数
6.1.5 多级指针的概念
6.2 指针与数组
6.2.1 指针与一维数组
6.2.2 指针与二维数组
6.2.3 指针与字符串
6.2.4 指针数组
6.3 指针与函数
6.3.1 指向函数的指针
6.3.2 返回指针的函数
6.3.3 带参数的主函数
6.4 典型例题精解
本章 小结
习题6
第7章 结构体与共用体
7.1 结构体
7.1.1 结构体类型的定义
7.1.2 结构体变量的说明
7.1.3 结构体变量的初始化
7.1.4 结构体变量的引用
7.1.5 结构体数组
7.1.6 结构体指针
7.1.7 结构体与函数
7.1.8 动态内存分配与链表
7.2 共用体
7.2.1 共用体类型的定义
7.2.2 共用体变量的说明
7.2.3 共用体变量的引用
7.3 枚举类型
7.3.1 枚举类型的定义
7.3.2 枚举变量的说明及引用
7.3 13枚举类型的应用
7.4 用户定义类型
7.5 典型例题精解
本章 小结
习题7
第8章 位运算
8.1 位运算的基本概念
8.2 计算机内的数据表示
8.3 位运算
8.3.1 逻辑位运算
8.3.2 移位运算
8.4 位域
8.4.1 位域的定义及位域变量的说明
8.4.2 位域变量的使用
8.5 典型例题精解
本章 小结
习题8
第9章 文件
9.1 概述
9.1.1 文件的基本概念
9.1.2 文件的分类
9.2 文件类型指针
9.3 文件的打开与关闭
9.3.1 文件的打开
9.3.2 文件的关闭
9.4 文件的读/写
9.4.1 字符输入/输出函数
9.4.2 文件的字符串输入/输出函数
9.4.3 文件的格式化输入/输出函数
9.4.4 文件的数据块输入/输出函数
9.4.5 整数输入/输出函数
9.5 文件的定位操作
9.6 文件的错误检测
9.7 典型例题精解
本章 小结
习题9
第10章 C++基础知识
10.1 面向对象程序设计概述
10.1.1 面向对象的基本概念
10.1.2 面向对象程序设计的特点
10.2 C++程序结构
10.2.1 一个简单的C++程序
10.2.2 C程序与C++程序的区别
10.3 类和对象
10.3.1 类和对象的定义
10.3.2 构造函数与析构函数
10.3.3 类中的const修饰符
10.3.4 静态成员
10.3.5 友元
10.4 典型例题精解
本章 小结
习题10
第11章 面向对象程序设计
11.1 继承与派生
11.1.1 基类和派生类
11.1.2 单一继承
11.1.3 多重继承
11.2 多态性与虚函数
11.2.1 函数重载
11.2.2 运算符重载
11.2.3 虚函数
11.2.4 抽象类
11.3 典型例题精解
本章 小结
习题11
第12章 应用程序实例
12.1 学生成绩管理系统设计
12.1.1 问题定义
12.1.2 设计方法
12.1.3 系统模块分解
12.1.4 模块设计
12.1.5 编码
12.1.6 学生成绩管理系统源码
12.2 通讯录管理系统
12.2.1 需求分析
12.2.2 系统设计
12.2.3 通讯录系统源代码
附录1 常用字符与ASCll代码对照表
附录2 运算优先级和结合性总表
参考文献
……[看更多目录]
序言当今信息化时代,大学生不仅要掌握计算机基础知识,而且要学会使用计算机进行程序设计。C/C++语言以其功能丰富、表达能力强、应用面广等特点,深受广大程序开发人员的青睐,因而也成为各高校计算机专业和非计算机专业的一门必修课。通过学习,让学生不仅掌握程序设计语言的知识、编程技术、调试方法和基本算法等,更重要的是在实践中逐步掌握程序设计的思想和方法,具备利用计算机求解实际问题的能力,并能灵活应用程序设计语言解决专业领域中的具体问题。为了满足程序设计基础教学改革的需要,我们组织了长期从事计算机程序设计课程教学,具有丰富教学实践经验的老师编写了《C/C++程序设计》一书,《C/C++程序设计(第2版)》为修订后的第2版,供广大高校的师生们选用。为适合各类学生的学习和掌握,我们在编写教材的同时,一并编写了配套的实验教材《C/C++程序设计实验指导与题解(第2版)》、CAI课件、电子教案及相应的程序设计素材,同时也开发了C/C++程序设计教学网站,以实现教学互动、网上作业和网上考试。
《C/C++程序设计(第2版)》以程序设计为主线,突出C/C++语言实用的重点概念,由案例、知识点和实验组成,加强程序阅读、编写和调试能力,强化实践训练。同时遵守循序渐进的原则,讲解深入浅出,并通过大量的案例讲解C/C++程序设计方法。《C/C++程序设计(第2版)》的主要内容包括:基本数据类型、运算符和表达式、程序控制结构、数组和字符串处理、函数和模块化程序设计、指针、结构体和共用体、位运算、文件、C++基础知识、面向对象程序设计及应用程序实例等。其内容丰富、概念清晰、组织精练、实用性强,并将知识点融入各章典型例题中,同时也注重培养学习者计算机程序设计能力和良好的程序设计风格。书中精选了典型的案例和习题,帮助学习者开阔思路和提高程序设计能力。书中的完整程序代码均在Microsoft Visual C++6.0环境下调试通过。
《C/C++程序设计(第2版)》由吴国凤、宣善立任主编,姚合生、黄晓梅任副主编,各章主要编写人员分工如下:第l、9章由吴国凤编写,第2章由谢文佩编写,第3、12章由宣善立编写,第4、8章由黄晓梅编写,第5章由王金玲编写,第6、7章由姚合生编写,第10、11章由于红光编写,全书由吴国凤统编定稿。参加《C/C++程序设计(第2版)》编写的还有李明、王卫、林杰华、方乃义、娄彦山、冷金鳞、黎杰等。
在《C/C++程序设计(第2版)》的编写过程中得到了兄弟院校从事计算机教育的专家、老师的支持和帮助以及教研室各位同仁的协作,在此一并表示最真诚的谢意。
由于编者水平有限,书中难免有疏漏之处,恳请各位专家和读者批评指正。
文摘插图:
3.数据结构类型丰富
C语言具有整型、实型、字符型、数组、指针、结构体、共同体等数据类型。能方便地构造更加复杂的数据结构(如使用指针构造链表、树、栈)。为处理各种复杂数据类型提供了实用的手段。
4.模块化结构 C语言是一种模块化的程序设计语言。C程序是由一系列函数构成的,这些函数可以自己设计,也可以由标准函数提供。C语言程序是由最顶层的函数main按照一定的组织层次调用标准函数或自己设计的函数而形成的。
5.具有结构化的控制语句
C语言具有多种结构化的控制语句,提供了if-else语句、while语句、do.while语句、switch语句、for语句。可以很容易地实现结构化的各种基本结构,用来设计结构化程序。
6.允许直接访问物理地址,进行位操作
能实现汇编语言的大部分功能,可以对硬件进行操作。
①C语言可以直接操作计算机硬件,如寄存器、各种外设I/0端口等。
②C语言的指针可以直接访问内存物理地址。
③C语言类似汇编语言的位操作可以方便地检查系统硬件的状态。
因此,C语言既具有高级语言的功能,又具有低级语言的许多功能,可以用来编写系统软件。C语言的这种双重性,使得其既可以作为系统描述语言,又可以作为程序设计语言。
7.C语言对语法限制不严格,程序设计灵活
C语言不检查数组下标越界,不限制对各种数据的转换(编译系统可能对不合适的转化进行警告,但不限制),不限制指针的使用,程序正确性由程序员保证。
实践中,C语言程序编译时会提示“警告错误”或“严重错误”。“警告错误”表示用户使用的语法可能有问题,但是有时可以忽略,程序仍然可以完成编译工作,然后运行(但是一般情况下“警告错误”往往意味着程序真的有问题,应该认真地检查)。“严重错误”是不能忽略的,编译系统发现严重错误后,不会产生目标代码。
灵活和安全是一对矛盾,对语法限制的不严格也是C语言的一个缺点,如黑客使用越界的数组攻击其他用户的计算机系统。