本版本是高清版,是第1版第18次印刷,是书签最全最好的版本。
基本信息原书名:TheC++ProgrammingLanguage,SpecialEdition原出版社:AddisonWesley作者:(美)BjarneStroustrup译者:裘宗燕丛书名:计算机科学丛书出版社:机械工业出版社ISBN:7111102029上架时间:2002-7-12出版日期:2002年7月页码:936版次:1-1内容简介  本书介绍了标准c++以及由c++所支持的关键性编程技术和设计技术。
标准c++较以前的版本功能更强大,其中许多新的语言特性,如名字空间、异常、模板、运行时类型声明等使得新技术得以直接应用。
本书围绕语言及库功能来组织,内容涉及c++的主要特征及标准库,并通过系统软件领域中的实例解释说明一些关键性的概念与技术。
本书的目的就是帮助读者了解c++是如何支持编程技术的,使读者能从中获得新的理解,从而成为一名优秀的编程人员和设计人员。
适合做高校面向对象编程课程的教科书,也可作为c++爱好者的参考书。
[center][ahref=http://www.china-pub.com/main/sale/c++tb.htmtarget=_blank]c++之父bjarnestroustrup博士专访[/a]  [ahref="http://www.is.pku.edu.cn/~qzy/cpp.htm"target="_blank"]《c++程序设计语言》程序的更正和更新[/a]  [ahref="http://www.china-pub.com/temporary/list/cooperate/zipdownload/zg.zip"target="_blank"]本书忠告[/a][/center]作译者作者:BjarneStroustrupBjarneStroustrup现任AT&T实验室的大型程序设计研究部的主管。
1990年,Bjarne荣获《财富》杂志评选的“美国12位最年轻的科学家”称号。
1993年,由于在C++领域的重大贡献,Bjarne获得了ACM该年度的GraceMurrayHopper大奖并成为ACM院士(成立于1947年的ACM协会是历史最悠久、目前世界上最大的教育和科学计算协会,成为ACM院士是个人成就的里程碑)。
1995年,BYTE杂志颁予他“近20年来计算机工业最具影响力的20人”的称号。
[同作者作品]C++程序设计语言(特别版)(英文影印版)C++语言的设计和演化[按需印刷]C++程序设计语言(特别版)译者:裘宗燕知名译者,翻译严谨,喜与读者交流。
  裘宗燕教授是北京大学数学学院信息科学系的,关心的主要学术领域包括计算机软件理论、程序设计方法学、程序设计语言和符号计算。
已出版多部著作和译著,包括《程序设计语言基础》(译著,1990),《Mathematica数学软件系统的应用与程序设计》(1994),《从问题到程序——程序设计与C语言引论》(1999)[同作者作品]计算机基础教程(上下)(文科类)(裘宗燕等)数据结构——C++与面向对象的途径数据结构--C++与面向对象的途径(修订版)目录出版者的话专家指导委员会中文版序译者序序第2版序第1版序导论第1章致读者31.1本书的结构31.1.1例子和参考41.1.2练习51.1.3有关实现的注记51.2学习c++61.3c++的设计71.3.1效率和结构81.3.2哲学注记91.4历史注记91.5c++的使用111.6c和c++12.1.6.1给c程序员的建议131.6.2给c++程序员的建议131.7有关在c++里编程的思考141.8忠告151.9参考文献16第2章c++概览192.1为什么是c++192.2程序设计范型192.3过程式程序设计202.3.1变量和算术212.3.2检测和循环222.3.3指针和数组232.4模块程序设计232.4.1分别编译242.4.2异常处理252.5数据抽象262.5.1定义类型的模块272.5.2用户定义类型282.5.3具体类型292.5.4抽象类型312.5.5虚函数332.6面向对象的程序设计332.6.1具体类型的问题332.6.2
2024/10/13 4:51:33 51.87MB C++ 程序设计语言 特别版 详细书签版
1
黄伯荣_廖序东_现代汉语_笔记整理,考研必备资料
2024/9/23 5:46:26 137KB 考研资料
1
设计一个包含学生基本信息(学号,姓名,成绩)的顺序表,编程完成如下功能:⑴初始化顺序表L:根据用户指定的学生数,逐个输入学生信息;
⑵打印表中所有学生信息:逐个显示表中所有学生的基本信息;
⑶判断L是否为空表;
⑷查找指定学生:根据姓名进行查找,返回学生的位序,并输出学生的学号和成绩;
⑸根据指定的位置,返回并输出相应学生的基本信息;
⑹给定一个学生信息,将其插入到表中指定的位置;
⑺删除指定位置的学生记录;
⑻统计表中学生个数(求表长度);
⑼销毁表L;
以上为必做题,下面为附加题(选做)。
⑽建立两个有序(学号)的学生顺序表La和Lb:分别向顺序表La和Lb逐个输入m个和n个学生的信息(并不一定按学号大小顺序输入);
⑾打印表La和Lb中的学生信息;
⑿将La和Lb归并为新的有序表Lc;
⒀打印表Lc中的学生信息;
⒁销毁顺序表La、Lb和Lc。
其他要求:⑴将所需要的标准头文件以及一些符号常量的定义等放在Common.h头文件中;
⑵顺序表类型定义(采用定义二)和基本操作函数声明放在Sqlist.h头文件中;
⑶基本操作函数的实现放在Sqlist.cpp文件中;
⑷测试应用程序放在SqlistTestApp.cpp文件中(可以任意重复测试)。
2024/9/22 21:16:40 768KB 顺序表
1
水泥行业袋收尘器
2024/9/20 8:03:07 3KB 程序人生
1
C语言实现二叉树的创建、插入、删除、遍历(先序、中序、后续、深度优先、广度优先)、计算度为0,1,2的节点个数。
包括排序二叉树的实现
2024/9/19 22:29:52 765KB 二叉树
1
(1)输入字符序列,建立二叉链表。
(2)先序、中序、后序遍历二叉树:递归算法。
(3)中序遍历二叉树:非递归算法(最好也能实现先序,后序非递归算法)。
(4)求二叉树的高度。
(5)求二叉树的叶子个数。
(6)对于树中每一个元素值为x的结点,删去以它为根的子树,并释放相应的空间。
(8)借助队列实现二叉树的层次遍历。
(9)在主函数中设计一个简单的菜单,分别调试上述算法。
2024/9/16 7:26:37 88KB 二叉树
1
研究深度学习和卷积神经网络的同学都知道Mnist这个数据库,它是一个手写数字的图像数据集,可以用来作为网络训练的基准测试数据库。
原版数据集是以特定格式存储的四个文件,包括乱序排列的60000个训练样本与10000个测试样本,以及它们对应的标签向量。
现将其中的图片从原文件中读取出来,重新转化为png格式,并将测试集和训练集分别按0~9进行分类,并存放在各自的子文件夹中,以便各位同学进行科研与实验之用。
原数据集下载地址为:http://yann.lecun.com/exdb/mnist/
1
编写程序,用先序递归遍历法建立二叉树的二叉链表存储结构,然后输出其先序、中序、后序以及层次遍历结点访问次序。
其中层次遍历的实现需使用循环队列。
二叉树结点数据类型建议选用字符类型
1
第二题[提示](1) 假定系统有五个进程,每一个进程用一个进程控制块PCB来代表。
进程控制块的格式为:进程名指针要求运行时间已运行时间状态其中,进程名----作为进程的标识,假设五个进程的进程名分别是Q1,Q2,Q3,Q4,Q5。
指针----进程按顺序排成循环队列,用指针指出下一个进程的进程控制块首地址,最后一个进程中的指针指出第一个进程的进程控制块首地址。
要求运行时间----假设进程需要运行的单位时间数。
已运行时间----假设进程已经运行的单位时间数,初始值为“0”。
状态----有两种状态,“就绪”状态和“结束”状态,初始状态都为“就绪”,用“R”表示,当一个进程运行结束后,它的状态变为“结束”,用“E”表示。
(2) 每次运行你所设计的处理器调度程序之前,为每个进程任意确定它的“要求运行时间”。
把五个进程按顺序排成循环队列,用指针指出队列连接情况。
另用一标志单元记录轮到运行的进程。
(3) 处理器调度总是选择标志单元指示的进程运行。
由于本实验是模拟处理器调度的功能,所以,对被选中的进程并不实际启动运行,而是执行:已运行时间+1来模拟进程的一次运行,表示进程已经运行过一个单位的时间。
请注意:在实际的系统中,当一个进程被选中运行时,必须置上该进程可以运行的时间片值,以及恢复进程的现场,让它占有处理器运行,直到出现等待事件或运行满一个时间片。
在这里省去了这些工作,仅用“已运行时间+1”来表示进程已经运行满一个时间片。
(4) 进程运行一次后,应把该进程的进程控制块中的指针值送到标志单元,以指示下一个轮到运行的进程。
同时,应判断该进程的要求运行时间与已运行时间,若该进程要求运行时间≠已运行时间,则表示它尚未执行结束,应待到下一轮时再运行。
若该进程的要求运行时间=已运行时间,则表示它已经执行结束,应把它的状态修改为“结束”(E)且退出队列。
此时,应把该进程的进程控制块中的指针值送到前面一个进程的指针位置。
(5) 若“就绪”状态的进程队列不为空,则重复上面(4)和(5)的步骤,直到所有进程都成为“结束”状态。
(6) 在所设计的称序中应有显示或打印语句,能显示或打印每次被选中进程的进程名以及运行一次后进称对列的变化。
(7) 为五个进程任意确定一组“要求运行时间”,启动所设计的处理器调度程序,显示或打印逐次被选中进程的进程名以及进程控制块的动态变化过程。
1
设二叉排序树的二叉链表存储结构的类型定义如下:typedefstructnode{intdata;//用整数表示一个结点的名structnode*LChild,*RChild;//左右指针域}BSTNode,*BSTree;设计算法并编写程序求解以下几个问题。
8121410731562415119131613(1)键盘输入一个元素序列创建一棵二叉排序树,输出该二叉排序树的中序遍历序列;
例如,若输入45,24,55,12,37,53,60,23,40,70则创建的二叉排序树为:输出结果为:12232437404553556070(2)在(1)中所得的二叉排序树中插入一个值为58的结点,再输出它的中序遍历序列,输出结果为:1223243740455355586070(3)在(1)中所得的二叉排序树中删除值为45的结点,再输出它的中序遍历序列,输出结果为:12232437405355586070(4)利用(1)中所得的二叉排序树的所有叶子结点构造一个带头结点的单链表L。
要求不能破坏这棵二叉排序树。
所得的单链表L如下。
输出该链表各结点的值,输出结果为:23405370(5)设计算法将(1)中所得的二叉排序树的左右子树进行交换,由于二叉树是一种递归定义,所以子树的左右两棵子树也要相交换,依此类推。
最后输出所得到的二叉树的中序遍历序列。
例如,经过上述操作后,(1)中所得的二叉排序树变为如下形式。
输出该二叉树的中序序列,结果为:70605553454037242312(6)设计算法统计并输出(1)中所得的二叉排序树中只有一个孩子结点的结点个数。
输出结果为:3(7)在(1)中所得的二叉排序树中,设计算法并编写程序输出结点40的所有祖先结点。
输出结果为:452437
2024/8/12 15:36:41 39KB 数据结构 C C++
1
共 230 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡