版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2023年普通考研-软件工程考试历年真摘选题含答案(图片大小可自由调整)第1卷一.参考题库(共100题)1.已知对一棵二叉排序树进行前序遍历得到的遍历序列为50,45,35,15,40,46,65,75,70请画出该二叉排序树。2.描述Spark集群计算中RDD的含义和作用。3.在执行fopen函数时,ferror函数的初值是()。A、-1B、0C、1D、TURE4.已知一棵二叉排序树的形状如图所示,其结点的值分别为1,2,3,4,5,6,7,8,请在该二叉排序树中标出各结点的值。 5.下面给出的四个关于函数定义形式中,正确的是()。A、double FUN(int x,int y);B、double FUN(int x,int y)C、double FUN(int x;int y);D、double FUN(int x,y)6.若需要打开一个已经存在的非空文件“file”并进行修改,则正确的打开语句是()。A、fp=fopen(“file”,“r”);B、fp=fopen(“file”,“ab+”);C、fp=fopen(“file”,“w+”);D、fp=fopen(“file”,“r+”);7.下列程序的输出结果是()。 #include FUN(int **b,int p[2][3]) { **b=p[1][1]; } main( ) { int a[2][3]={2,4,6,8,10,12},*p; p=(int *)malloc(sizeof(int)); FUN(&p,a); printf(“%d/n”,*p); }8.以下程序中调用scanf函数给变量a输入数值的方法是错误的,其错误的原因是()。 main( ) { int *p,*q,a,b; p=&a; printf(“input a:”); scanf(“%d”,*p); …… }A、*p表示的是指针变量p的地址B、*p表示的是变量a的值,而不是变量a的地址C、*p表示的是指针变量p的值D、*p只能用来说明p是一个指针变量9.对于函数定义: void FUN(int n, double x) { … } 若以下选项中的变量都已定义并赋值,则对函数FUN的正确调用的语句是()。 A、k=FUN(x,n);B、void FUN(n,x);C、FUN(int y,double m);D、FUN(10,12.5);10.某页式管理系统中,地址寄存器的低10位表示页内地址,则页面大小为()A、1024字节B、2048KC、512字节D、512K11.软件设计的主要任务是设计软件的结构、过程和模块,其中软件结构设计的主要任务是要确定()。A、模块间的操作细节B、模块间的相似性C、模块间的组成关系D、模块的具体功能12.一棵度为2的树与一棵二叉树有何区别?13.SA方法的分析步骤是首先调查了解当前系统的工作流程,然后()。A、获得当前系统的物理模型,抽象出当前系统的逻辑模型,建立目标系统的逻辑模型B、获得当前系统的物理模型,抽象出目标系统的逻辑模型,建立目标系统的物理模型C、获得当前系统的物理模型,建立当前系统的物理模型,抽象出目标系统的逻辑模型D、获得当前系统的物理模型,建立当前系统的物理模型,建立目标系统的物理模型14.以下程序的功能是先通过键盘输入一个文件名,然后把从键盘输入的字符依次存放到该文件中(用符号#作为输入结束标志)。请分别在程序的空白处(横线上方)填入合适的内容。15.若有说明:int a[3][4]; 则对a数组元素的非法引用的是()。A、a[0][2*1]B、a[0][4]C、a[4-2][0]D、a[1][3]16.对二叉排序树进行()遍历,得到的遍历序列一定是一个按结点值的大小排列的序列。17.已知二叉树中叶结点数为50,仅有一个孩子的结点数为30,则总结点数为() A、81;B、129;C、110;D、130;18.若变量a,b,c被定义为int类型,要通过键盘分别给a,b,c输入数据,则正确的输入语句是()。A、INPUT a,b,c;B、read(“%d%d%d”,&a,&b,&c);C、scanf(“%d%d%d”,a,b,c);D、scanf(“%d%d%d”,&a,&b,&c);19.从循环体内某一层跳出,继续执行本循环的下一次循环的语句是()。A、break语句B、continue语句C、return语句D、空语句20.简要列出影响一个算法时间效率的主要因素,并指出其中与算法本身直接有关的因素。21.不适于作为数据流图处理(加工)框名 称的是()。A、人工校核工资数据B、工资支票数据C、打印工资支票D、计算职工工资22.McCabe复杂性度量又称()。23.散列技术中的散列冲突是指()。A、两个元素具有相同的序号B、两个元素的键值不同,而其他属性相同C、元素过多D、不同键值的元素对应着相同的存储地址24.在长度为2h-1的有序表中进行折半查找,查找成功的情况下最多需要进行多少次元素之间的比较?25.若非空队列采用链式存储结构,队头指针与队尾指针分别为front和rear,则删除队列的一个元素的过程是依次执行:p=front;,(),free(p);。A、rear=p;B、rear=p->link;C、front=p->link;D、front=rear->link;26.在循环首次适应算法中,空闲区按()顺序链成空闲区链。A、空闲区大小递增B、空闲区大小递减C、空闲区地址大小递增D、空闲区地址大小递减27.在C语言中,用于结构化程序设计的3种基本结构是()。A、顺序结构、选择结构、循环结构B、if、switch、breakC、for、while、do-whileD、if、for、continue28.已知非空二叉排序树采用二叉链表存储结构,链结点构造为,根结点指针为T。下面给出的是在该二叉排序树中查找数据信息为item的结点的非递归算法,若查找成功,则算法返回被查到结点所在链结点指针,否则,算法返回信息NULL。 请在算法中的空白处(横线上方)填入必要的内容,使得算法完整正确。 29.功能点技术定义了信息域的 5 个特性,分别是:输入项数,输出项数,查询,主文件数和()。A、内部接口数B、内部查询数C、外部数据库数D、外部接口数30.若有定义:int a[10],*p; 则*(p+5)表示()。A、元素a[5]的值B、元素a[5]的地址C、元素a[6]的值D、元素a[6]的地址31.什么是递归算法?通常情况下,递归算法在执行过程中需要借助何种数据结构?32.在SD方法中全面指导模块划分的最重要的原则是()A、程序模块化B、模块高内聚C、模块低耦合D、模块独立性33.数据字典中有四类条目,分别是()。34.以下对C语言函数的有关叙述中,正确的是()。 A、C语言程序由一个或者多个函数组成B、C语言函数既可以嵌套定义,也可以递归定义C、函数必须有返回值,否则不能使用函数D、在C语言程序中,存在调用关系的所有函数必须放在同一个源程序文件中35.论述成熟度各个级别的软件过程特征36.写出下列程序的输出结果 37.对具有n个元素的序列采用插入排序法进行排序,排序总趟数为()。A、nB、n−1C、n+1D、38.三层体系结构包括:()、()和()。39.虚拟段式存储管理中,若逻辑地址的段内地址大于段表中该段的段长,则发生地址越界中断。40.某工厂生产若干产品,每种产品由不同的零件组成,有的零件可用在不同的产品上。这些零件由不同的原材料制成,不同零件所用的材料可以相同。这些零件按所属的不同产品分别放在仓库中,原材料按照类别放在若干仓库中。请用 E 一 R 图画出此工厂产品、零件、材料、仓库的概念模型。41.若已有以下定义和语句: #include int x=4,y=3,*p,*q,*s; p=&x; q=&y; s=q; q=NULL; 则下面分别给出的四条语句中,错误的是()A、*q=0;B、s=p;C、*p=x;D、*p=*s;42.若变量y为float类型,且已经被赋值,则下列语句中能够将y中数值保留到小数点后面两位,并且将第三位四舍五入的是()。 A、y=y*100+0.5/100.0;B、y=(y*100+0.5)/100.0;C、y=(y/100+0.5)*100.0;D、y=(int)(y*100+0.5)/100.0;43.若4个元素进栈的先后次序为a,b,c,d,下面给出的4个选择中,不可能是该堆栈的输出序列的是()。A、a,c,b,dB、b,c,d,aC、d,b,c,aD、c,d,b,a44.请编写求N个完全数的程序。 所谓完全数是一个整数,该整数等于除自身以外的所有约数之和。例如:6是一个完全数,因为6=1+2+3;28也是一个完全数,因为28=1+2+4+7+14。 约定:通过键盘输入N的值,并且N=3。45.软件需求分析的任务是什么?有哪些主要步骤?46.以下不能进行字符串赋初值的语句是()。A、char *str= “good!”;B、char str[]= “good!”;C、char str[5]= {‘g’,‘o’,‘o’,‘d’};D、char str[5]= “good!”;47.若具有n个顶点的无向图采用邻接矩阵存储方法,则该邻接矩阵一定为一个()。A、一般矩阵B、对角矩阵C、对称矩阵D、稀疏矩阵48.结合数据库原理对实例进行探讨分析。对淘宝或京东的部分数据库内容进行分析,其中包括:买家、购买商品、购物车。设计出这3个实体的E-R图,各自应具有的特性Attribute,并标注出它们间关联关系。49.若在线性表中进行顺序查找,则该线性表应该采用()。A、散列存储结构B、顺序存储结构C、链式存储结构D、顺序存储结构或者链式存储结构50.若有如下定义: struct sk{ int a; int b; }data,*p=&data; 则对data中的成员x的正确引用的是()。 A、(*p).aB、(*p).data.aC、p->data.aD、p.data.a51.若有如下程序段,其中s、a、b、c均被定义为整型变量,并且a和c已经赋值(c>0), s=a; for(b=1;b<=c;b++) s=s+1; 则与上述程序段功能等价的赋值语句是()。 A、s=a+b;B、s=a+c;C、s=s+c;D、s=b+c;52.“快速建立软件原型”是一种比较准确、有效、强大的需求分析技术,为了快速的构建和修改原型,通常采用 3 种方法和工具,以下哪项是无效的()A、可重用的软件构件B、形式化需求规格说明和环境原型C、高级语言选择D、第四代技术53.下列叙述中,()不属于数据字典的作用。A、作为编码阶段的描述工具B、为用户与开发人员之间统一认识C、作为概要设计的依据D、为需求分析阶段定义各类条目54.非空完全二叉树的第i层一定有2i-1个结点。55.图的深度优先遍历类似于二叉树的()遍历。56.试述数据库设计过程。57.()是对引起系统做动作或(和)从一个状态转换到另一个状态的外界事情的抽象。 A、事件B、状态C、初态D、终态58.()的结果基本上决定了最终的程序代码的质量。A、概要设计B、详细设计C、编码D、测试59.已知长度为n的非空顺序表A[0..n-1],请写一算法,该算法删除表中重复出现的数据元素。60.已知单链表的结点结构为,第1个结点的指针为list。请写一算法,找到链表的倒数第k个结点。若找到这样的结点,算法给出该结点的地址,否则,算法给出信息NULL。 限制:算法中不得求链表长度与逆转链表,也不允许使用除指针变量和控制变量以外的其他辅助空间。61.若t=1,a=2,b=3,c=4,则条件表达式tA、0B、1C、2D、362.若从无向图中任意一个顶点出发进行1次深度优先搜索便可以访问到该图的所有顶点,则该图一定是一个()。A、非连通图B、强连通图C、连通图D、完全图63.当接收用户输入的含空格的字符串时,应该使用的函数是()。A、scanf()B、gets()C、getchar()D、getc()64.若二叉树中叶结点的个数为n0,则度为2的结点的个数为()65.若具有n个顶点、e条边且不带权的无向图采用邻接矩阵存储,则邻接矩阵中的零元素的数目是()66.下面给出的四种排序法中,排序过程中元素之间的比较次数与排序法无关的是()。A、选择排序法B、插入排序法C、快速排序法D、堆积排序法67.如果说堆栈与队列是同一类的两种不同的数据结构,那么,它们的相同点和不同点分别是什么?68.逻辑运算符两侧的运算对象的数据类型()。A、只能是0或者1B、只能是0或者非0正数C、只能是整数或者字符型数据D、可以是任何类型的数据69.请用完全二叉树的形式画出序列(26,5,77,1,61,11,59,15,48,19) 对应的大顶堆积(Heap)。70.已知长度为12的线性表(Nov,Dec,Jul,Feb,Oct,Sept,Aug,Apr,May,Jun,Jan,Mar),请依次按照表中各数据元素的第一个字母在英文字母表中的先后顺序构造一棵二叉排序树。71.作坊式小团体合作生产方式的时代是()时代。A、程序设计B、软件生产自动化C、程序系统D、软件工程72.通过()可以完成数据流图的细化。 A、结构分解B、功能分解C、数据分解D、系统分解73.已知无向图采用邻接表存储,邻接表如图所示。请分别写出从顶点A开始进行深度优先遍历与广度优先遍历后得到的遍历序列。 74.若具有n个顶点且不带权的连通图采用邻接矩阵存储,则该邻接矩阵中至少有()个非零元素。75.若有下列函数定义: setw(int *x,int m,int n,int data) { int k; for(k=0;k<m*n;k++){ *x=data; x++; } } 则调用此函数的正确写法是(假设变量的说明为int a[50];)()。 </m*n;k++){A、setw(*a,5,8,1);B、setw(&a,5,8,1);C、setw((int*)a,5,8,1);D、setw(a,5,8,1);76.下面程序的功能是输出100以内能够被3整除且个位数为6的所有正整数。请分别在程序的空白处(横线上方)填入一个表达式。 77.若对序列(tang, deng, an, wang, shi, bai, fang, liu)按字典顺序进行排序,采用的排序方法是选择排序法,那么,第二趟排序结束时,序列的状态是()78.证明:具有n个顶点的无向图最多有n×(n-1)/2条边。(即写出结论的推导过程)79.以下四个关于C语言的叙述中,错误的是()。A、可以用while语句实现的循环一定可以用for语句实现B、可以用for语句实现的循环一定可以用while语句实现C、可以用do-while语句实现的循环一定可以用while语句实现D、do-while语句与while语句的区别进是关键字“while”出现的位置不同80.概要设计主要是把各项()转换成系统的()。81.若有说明“int a[10]={1,2,3,4,5,6,7,8,9,10}, *p=a;”,则数值为9的表达式是()。A、*p+9B、*(p+8)C、*p+=9D、p+882.我们通常采用大O形式来表示算法的时间复杂度。例如,在一个长度为n的顺序表中顺序查找一个数据元素的过程的时间复杂度为O(n),其中,n表示问题的规模。那么,O(1)表示什么?请举出一个例子加以说明。83.请根据堆积(Heap)的定义,以二叉树的形式画出序列(26,5,77,1,61,11,59,15,48,19)对应的(大顶)堆积。84.拓扑排序的主要功能是什么?对于一个存在拓扑序列的有向图,通过拓扑排序得到的拓扑序列是否惟一?85.Python语言定义类的成员是在()函数中定义。86.请写一程序,统计通过键盘输入的命令行中的第二个参数所包含的英文字符的个数。 提示:使用带参数的main函数形式。87.软件设计将涉及软件的构造、过程和模块的设计,其中软件过程是指()A、模块间的关系B、模块的操作细节C、软件层次结构D、软件开发过程88.在软件维护工作中进行的最少的部分是() A、校正性维护B、适应性维护C、完善性维护D、预防性维护89.在任何情况下,折半查找方法都要比顺序查找方法要快。90.类具有操作,它是对象()的抽象。91.若程序中已经包含头文件stdio.h,则下列程序段中,正确运用指针变量的是()A、AB、BC、CD、D92.简述数据结构中树和二叉树有什么不同。93.软件测试的目标是什么,有哪几种主要有测试方法?94.若选择当前排序的第1个元素作为分界元素(也称枢轴或支点),什么情况下,快速排序法的时间效率会退化到简单排序法的程度?请说明理由。95.顺序存储结构只适用于存储线性结构。96.()是可行性研究的一项重要内容,是客户组织负责人从经济角度判断是否继续投资于这项工程的主要依据。A、纯收入计算B、投资回收期分析C、成本/效益分析D、投资回收率分析97.下面程序的运行结果是()。 #define DOUBLE(r) r*r main( ) { int a=1,b=2,temp; temp=DOUBLE(a+b); printf(“%d/n”,temp); } A、3B、5C、7D、998.堆栈与队列的共同点是()。A、元素的进/出满足“先进先出”的规律B、元素的进/出满足“先进后出”的规律C、只允许在表的端点处进行插入和删除元素的操作D、不存在共同点99.请编写一程序,该程序统计并输出文本文件file.dat中的字符个数。100.试述数据库设计过程各个阶段上的设计描述。第1卷参考答案一.参考题库1.正确答案: 2.正确答案:Spark的核心概念是RDD (resilientdistributed dataset),指的是一个只读的,可分区的分布式数据集,这个数据集的全部或部分可以缓存在内存中,在多次计算间重用。Spark解决迭代计算的主要实现思想就是RDD,把所有计算的数据保存在分布式的内存中。迭代计算通常情况下都是对同一个数据集做反复的迭代计算,数据在内存中将大大提升IO操作。这也是Spark涉及的核心:内存计算。Spark和RDD的关系可以理解为:RDD是一种具有容错性基于内存的集群计算抽象方法,Spark则是这个抽象方法的实现。3.正确答案:B4.正确答案: 5.正确答案:B6.正确答案:D7.正确答案:108.正确答案:B9.正确答案:D10.正确答案:A11.正确答案:C12.正确答案:二叉树的子树有严格的左、右之分,其次序不能随意颠倒。13.正确答案:A14.正确答案: ① fopen(filename,“w”) ② ch15.正确答案:B16.正确答案:中序17.正确答案:B18.正确答案:D19.正确答案:B20.正确答案: 影响一个算法(或程序)时间效率的主要因素有以下几点: ① 算法涉及的问题的规模大小; ② 编译程序功能的强弱以及所产生的机器代码质量的优劣; ③ 机器执行一条指令的时间长短; ④ 算法(或程序)中诸如循环语句的那些关键语句的执行次数。 其中,在很多情况下,因素④与因素①密切相关,它们是与算法(或程序)本身直接有关的因素。21.正确答案:B22.正确答案:环路度量23.正确答案:D24.正确答案: 25.正确答案:C26.正确答案:C27.正确答案:A28.正确答案: ①p!=NULL ②itemdata ③p=p->rchild;29.正确答案:D30.正确答案:A31.正确答案:一个算法在结束本算法之前,直接或者间接地调用算法自身,这样的算法称为递归算法。递归算法在执行过程中通常需要借助于堆栈这种数据结构来完成。32.正确答案:D33.正确答案:数据流、数据项、数据存储、基本加工34.正确答案:A35.正确答案: 36.正确答案: 程序的输出结果是7,337.正确答案:B38.正确答案:用户层;业务层;数据层39.正确答案:正确40.正确答案: 41.正确答案:A42.正确答案:D43.正确答案:C44.正确答案: 45.正确答案: 需求分析的基本任务是深入描述软件的功能和性能、确定软件设计的约束和软件同其它系统元素的接口细节、定义软件的其它有效性需求,总之,需求分析的任务就是借助于当前系统的逻辑模型导出目标系统的逻辑模型,解决目标系统的 “做什么” 的问题。 主要步骤: 1.问题识别 (1) 功能需求:明确所开发的软件必须具备什么样的功能。 (2) 性能需求:明确待开发的软件的技术性能指标。 (3) 环境需求:明确软件运行时所需要的软、硬件的要求。 (4) 用户界面需求:明确人机交互方式、输入输出数据格式。 2. 分析与综合,导出软件的逻辑模型 分析人员对获取的需求,进行一致性的分析检查,在分析、综合中逐步细化软件功能,划分成各个子功能。用图文结合的形式,建立起新系统的逻辑模型。 3. 编写文档 (1) 编写“需求规格说明书”,把双方共同的理解与分析结果用规范的方式描述出来,作为今后各项工作的基础。 (2) 编写初步用户使用手册,着重反映被开发软件的用户功能界面和用户使用的具体要求,用户手册能强制分析人员从用户使用的观点考虑软件。 (3) 编写确认测试计划,作为今后确认和验收的依据。 (4) 修改完善软件开发计划。在需求分析阶段对待开发的系统有了更进一步的了解,所以能更准确地估计开发成本、进度及资源要求,因此对原计划要进行适当修正。46.正确答案:D47.正确答案:C48.正确答案: 淘宝、京东等电子商务网站软件E-R图 1.实体之间的E-R图 本*系统实体包括:店主、广告商、客户、网络管理员、商品、购物车、订单、仓库。 49.正确答案:D50.正确答案:A51.正确答案:B52.正确答案:C53.正确答案:A54.正确答案:错误55.正确答案:前序56.正确答案: 数据库设计的过程(六个阶段) 1.需求分析阶段:准确了解与分析用户需求(包括数据与处理)是整个设计过程的基础,是最困难、最耗费时间的一步。 2.概念结构设计阶段: 是整个数据库设计的关键,通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。 3.逻辑结构设计阶段:将概念结构转换为某个DBMS所支持的数据模型对其进行优化。 4.数据库物理设计阶段:为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。 5.数据库实施阶段:运用DBMS提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。 6.数据库运行和维护阶段:数据库应用系统经过试运行后即可投入正式运行。在数据库系统运行过程中必须不断地对其进行评价、调整与修改。57.正确答案:A58.正确答案:B59.正确答案: 60.正确答案: 61.正确答案:B62.正确答案:C63.正确答案:B64.正确答案:n0-165.正确答案:n2-2e66.正确答案:A67.正确答案: 相同点:从逻辑上来看,堆栈和队列都是特殊的线性表;从操作的角度来看,堆栈和队列的基本操作分别都是一般线性表的操作的子集,因此,他们都是操作受限制的线性表。 不同点:堆栈将插入和删除操作限制在表尾(栈顶)进行,元素进出表的特征是“后进先出”;队列将插入和删除操作分别限制在表尾(队尾)和表头(队头)进行,元素进出表的特征是“先进先出”。68.正确答案:D69.正确答案: 70.正确答案: 71.正确答案:C72.正确答案:B73.正确答案: 深度优先序列:ACBDE 广度优先序列:ACEBD74.正确答案:2(n-1)75.正确答案:D76.正确答案: ①i<10 ②j%3
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度新能源电动车研发与生产承包合同
- 2024年度建筑企业融资租赁合同
- 04年物流仓储服务合同范本
- 2024年度农业保险服务合同
- 紧身套衫市场需求与消费特点分析
- 2024年度技术转让合同转让技术范围与技术保密
- 2024年度大数据分析服务合同:某数据公司与某金融机构之间的大数据分析服务合同
- 2024年度混凝土输送泵车租赁合同书
- 蚕丝被市场发展预测和趋势分析
- 2024年度教育培训合同及服务协议
- 服装投标技术方案全
- 中国石油天然气集团公司物资采购管理办法
- 填埋库区平整土石工程施工设计方案
- Juniper-SRX中文配置手册及图解
- 马丁路德的宗教改革教学课件
- 柜员先进事迹银行先进柜员职工先进事迹演讲稿
- 边坡工程支护设计计算书Word
- 证券投资学习题(霍文文)附答案
- 管理学谷歌案例分析
- 会计专业剖析报告 - 副本
- 政采云采购项目合同创建及录入操作指南
评论
0/150
提交评论