软件技术基础考卷
全国计算机软件技术考试试题及答案

全国计算机软件技术考试试题及答案考试科目:计算机软件技术基础试题一问题描述:编写一个程序,实现输入一个整数,输出该整数的阶乘。
答案:def factorial(n):if n == 0:return 1else:return n * factorial(n-1)n = int(input("请输入一个整数:"))print("阶乘为:", factorial(n))试题二问题描述:编写一个程序,实现输入一个字符串,输出该字符串中字符出现次数最多的字符及其出现次数。
答案:def most_frequent_char(s):char_count = {}max_count = 0most_frequent_char = ''for char in s:if char in char_count:char_count[char] += 1else:char_count[char] = 1if char_count[char] > max_count:max_count = char_count[char]most_frequent_char = charreturn most_frequent_char, max_counts = input("请输入一个字符串:")char, count = most_frequent_char(s)print("出现次数最多的字符为:", char, ",出现次数为:", count)试题三问题描述:编写一个程序,实现输入一个整数,输出该整数的所有因数。
答案:def print_factors(n):factors = []for i in range(1, n + 1):if n % i == 0:factors.append(i)print("因数为:", factors)n = int(input("请输入一个整数:"))print_factors(n)以上为三道试题的答案,希望能够帮助您顺利通过全国计算机软件技术考试。
软件技术基础试题库

软件技术基础试题库软件技术基础(21次)一、是非判断题(10分)1.应用程序在执行过程中,需要通过打印机输出数据时,一般先形成一个打印作业,将其存放在硬盘中的一个指定队列中。
当打印机空闲时,就会按先来后服务的方式从中取出待打印的作业进行打印。
(F)2.若无进程处于运行状态,则就绪队列和等待队列均为空。
(F)3.多道程序设计是指在一台处理机上并发运行多个程序。
(T)4.黑盒法是软件测试方法中的静态测试方法之一。
(T)5.软件的详细设计就是要编写出具体的程序。
(F)6.软件生命周期中花费最多的阶段是软件维护。
(T)7.WINDOWS是单用户多任务操作系统,UNIX是多用户多任务操作系统。
(T)8.进程把程序作为它的运行实体,没有程序也就没有进程。
(T)9.在结构化分析中,用于是描述加工逻辑的主要工具有三程,即:结构化语言、判断表和判定树。
(T)10.作业调度程序从后备队列中选一个作业装入主存后,决定能否占用处理机的是设备调度程序。
(F)二.单项选择题(5分)1.交换技术是在()之间交换程序和数据。
A.主内存与CPUB.CPU与外设C.主内存与外存D.外存与CPU2.以下的工具中哪个不是软件详细设计中使用的工具()A.数据流图B.N-S图C.PDA图D.PDL语言注:软件开发阶段包括需求分析、总体设计、详细设计、编码和测试五个阶段。
其中需求分析阶段常用的工具是数据流程图和数据字典。
3.任何两个并发进程之间()A.一定存在互斥关系B.一定存在同步关系C.一定彼此独立无关D.可能存在同步或互斥关系4.进程从运行状态进入就绪状态的原因可能是()A.被选中占有处理机B.等待某一事件C.等待的事件已发生D.时间片用完5.算法指的是()A.计算机程序B.解决问题的有限运算序列C.排序算法D.解决问题的计算方法软件技术基础模拟试题(第二十次省统考)一、是非判断题(正确选填A,错误选填B)(每小题1分,共10分)1、数据元素是数据的基本单位,数据项是数据的最小单位。
“软件技术基础”考题(含答案)(精)

第三十次:一、是非判断题(每小题 1分,共 10分( 判断下列各题是否正确,如正确,在客观答题纸上对应编号选 A ,否则选 B1. 能影响中断响应次序的技术是中断优先级和中断屏蔽。
( 12. 线性结构中元素的关系是一对一,树形结构中元素的关系也是一对一。
( 23. 在操作系统中,进程是一个具有独立运行功能的程序在某个数据集合上的一次运行过程。
( 34. 操作系统的存储器管理部分负责对进程进行调度。
( 45. 分时操作系统通常采用时间片轮转策略为用户服务。
( 56. 作业与进程的主要区别是前者是由用户提交,后者是由系统自动生成。
( 67. 顺序查找只适用于存储结构为顺序存储的线性表。
( 78. 栈顶的位置是随着进栈和退栈操作而变化的。
( 89. 结构化程序设计主要强调的是程序的易读性。
( 9 10. 在结构化分析中,用于描述加工逻辑的主要工具有三种,即:结构化语言、判定表、判定树。
( 10 参考答案 :二、选择题 (每小题 1分,共 5分1. 分页式存储管理的主要特点是(11 。
11 (A 要求作业全部同时装入内存 (B 不要求作业装入到内存的连续区域(C 要求扩充外存容量 (D 不要求处理缺页中断2. 进程从运行状态进入就绪状态的原因可能是(12 。
12 (A 被选中占有处理机 (B 等待某一事件(C 等待的事件已发生 (D 时间片用完3. 多道程序设计是指(13 。
13 (A 在实时系统中并发运行多个程序 (B 在分布系统工程中同一时刻运行多个程序 (C 在一台处理机上同一时刻运行多个程序 (D 在一台处理机上并发运行多个程序 4. 需求分析中开发人员主要从用户那里了解(14 。
14 (A 软件如何做 (B 软件数据结构(C 软件做什么 (D 软件模块大小5. 对象实现了数据和操作的结合,使数据和操作 (15 于对象的统一体中。
15 (A 结合 (B 隐藏(C 封装 (D 抽象参考答案 :第二十九次:一、是非判断题(每小题 1分,共 10分( 判断下列各题是否正确,如正确,在客观答题纸上对应编号选 A ,否则选 B1. 在设备管理中通道是处理输入、输出的软件。
软件技术基础试题(含答案)

《操作系统》选择题:(bs30)1. 分页式存储管理的主要特点是(B)。
(A) 要求作业全部同时装入内存(B) 不要求作业装入到内存的连续区域(C) 要求扩充外存容量(D) 不要求处理缺页中断(bs30)2. 进程从运行状态进入就绪状态的原因可能是(D)。
(A) 被选中占有处理机(B) 等待某一事件(C) 等待的事件已发生(D) 时间片用完(bs30)3. 多道程序设计是指(D)。
(A) 在实时系统中并发运行多个程序(B) 在分布系统工程中同一时刻运行多个程序(C) 在一台处理机上同一时刻运行多个程序(D) 在一台处理机上并发运行多个程序(bs29)2. 进程从运行状态进入就绪状态的原因可能是( A )。
(A) 时间片用完(B) 等待某一事件(C) 等待的事件已发生(D) 被选中占有处理机(bs29)4. 以下(D)不是实时操作系统的特点。
(A) 高可靠性(B) 及时响应(C) 高效性(D) 通用性(bs28)3. 任何两个并发进程之间( A )。
(A) 可能存在同步或互斥关系(B) 一定存在同步关系(C) 一定彼此独立无关(D) 一定存在互斥关系(bs28)4. 以下的哪个特征不是分时操作系统的主要特征(B)。
(A) 分时性(B) 独占性(C) 交互性(D) 多路性(bs27)2. 以下(D)不是实时操作系统的特点。
(A) 高可靠性(B) 及时响应(C) 中断管理(D) 独立性(bs27)3. 若当前进程因时间片用完而让出处理机时,该进程应转变为(B)状态。
(A) 运行(B) 就绪(C) 等待(D) 完成(bs26)3. 在多道程序设计系统中,处于后备状态的作业要经过(D)调度后才能真正执行。
(A) 作业调度(B) 作业调度和设备调度(C) 进程调度(D) 作业调度和进程调度(bs25)1. 把高级语言的源程序翻译成二进制代码的过程称为:(A)。
(A) 编译(B) 连接(C) 运行(D) 重定位(bs25)2. 把逻辑地址转变为内存的物理地址的过程称作(D)。
软件技术基础总复习题及参考答案

软件技术基础总复习题及参考答案软件技术基础总复习题及参考答案一、选择题1、线性表若是采用链式存储结构时,要求内存中可用存储单元的地址 D 。
A、必须是连续的B、部分地址必须是连续的C、一定是不连续的D、连续或不连续都可以2、栈和队列都是B 。
A、顺序存贮的线性结构B、限制存取点的线性结构C、链接存贮的线性结构D、限制存取点的非线性结构3、与线性表的链接存贮不相符合的特性是 C 。
A、便于插、删运算B、存贮空间动态分配C、需要连续的存贮空间D、只能顺序查找4、设二叉树的根为第一层,则第i 层上的结点数最多有B。
A、2i B、2i +1D、2i -1C、2-1i 5、如将一棵有n 个结点的完全二叉树按顺序存放方式,存放在下标编号为0, 1,…, n-1 的一维数组中,设某结点下标为k(k>0),则其双亲结点的下标是A。
A、(k-1)/2B、(k+1)/2C、k/2D、k-16、权值分别为3,8,6,2,5 的叶子结点生成一棵霍夫曼树,它的带权路径长度为A。
A、53 B、48 C、72 D、247、设I 和O 分别表示入栈和出栈操作,栈的初态和终态都为空,则下列操作序列合法的有_ D_ _。
A、IOIOOIOIB、IOOIOIIOC、IIIOIOIOOD、IIOIIOOO 8、二叉树的前序序列为EFHIGJK,中序序列为HFIEJKG,则二叉树的根为C 。
A、K B、G C、E D、H 9、对有序表{ -1, 0, 1, 3, 4, 6, 8, 10, 12 }进行折半查找,则查找12 需要比较的次数为 B 。
A、3 B、4 C、5 D、6 10、在一个单链表中,若q 结点是p 结点的前驱结点,若在q 与p 之间插入结点s,则执行 D 。
A、s→link = p→link; p→link = s; B、p→link= s; s→link = q; C、p→link = s→link; s→link = p; D、q→link = s; s→lin k = p; 11、一个栈的入栈序列为a,b,c,则出栈序列不可能的是C 。
《计算机软件技术基础》试题及答案

《计算机软件技术基础》试题1.线性表的链式储存结构与次序储存结构对比优点是CD 。
A.所有的操作算法实现简单B.便于随机存取C.便于插入和删除D.便于利用零落的储存器空间2.线性表是拥有n个 C 的有限序列。
A.表元素B.字符C.数据元素D.数据项E.信息项3.若长度为n的线性表采纳次序储存结构, 在其第I个地点插入一个新元素的算法的时间复杂度为 C 。
(1≤I≤n+1)A.O(0)B.O(1)C.O(n)D.O(n2)4.设A是一个线性表(a1,a2,…,an), 采纳次序储存结构, 则在等概率的前提下, 均匀每插入一个元素需要挪动的元素个数为 B , 均匀每删除一个元素需要挪动的元素个数为A ;若元素插在ai与ai+1之间(0≤I≤n-1)的概率为, 则均匀每插入一个元素所要挪动的元素个数为 C ;A. B.C. D.5.以下函数中, 按它们在时的无量大阶数, 最大的是 D 。
A.lognB.nlognC.2n/2D.n!6.将以下图所示的s所指结点加到p所指的结点以后, 其语句应为: D 。
A.s->next=p+1.p->next=s;B.(*p).next=s.(*s).next=(*p).next;C.s->next=p->next.p->next=s->next;D.s->next=p->next.p->next=s;7.将两个各有n个元素的有序表合并为一个有序表时, 其最少的比较次数是A 。
A.nB.2n-1C.n-1D.2n8.下边的程序段是合并两个无头结点链表(ha和hb)为一个无头结点链表ha的过程, 作为参数的两个链表都是按结点的data域由大到小链接的。
合并后新链表的结点仍按此方式链接。
请填写下述空框, 使程序能正确运转。
#define NULL 0typedef struct node{int data;struct node *next;}node, linklisttype;void combine(linklisttype *ha, linklisttype *hb){linklisttype *h, *p;h = (linklisttype *)malloc(sizeof(linklisttype));h->next = NULL;p = h;while(ha != NULL && hb != NULL)if(ha->data>=hb->data){ /*较大的元素先插入*/p->next = (1) ;p = (2) ;(3) ;}else{p->next = (4) ;p = (5) ;(6) ;}if(ha==NULL) (7) ;if(hb==NULL) (8) ;ha = h->next;free(h);}参照答案: (1) ha (2) p->next (3) ha=ha->next(4) hb (5) p->next (6) hb=hb->next(7) p->next=hb (8) p->next=ha9.假如表A中所有元素(a1,a2,…,an)与表B的一个次序子表(bk,bk+1,…bk+n-1)完好同样(即a1=bk,a2=bk+1,…an=bk+n-1), 则称表A包含在表B中。
软件技术基础试题1.docx

7、对J一个头指针为head的带头结点的单链表,判定该表为空的条件是( )。
(A) head=NULL;(B) head->next=NULL;(C) head->next=head;(D) head!=NULL;8、假定利用数组a[N]顺序存储一个栈,用top表示栈顶指针,top=-l表示栈空,已知栈未空,则退栈并返回栈顶元素时所执行的操作为( )。
(A) return a[一top]: (B) return a [top一];(C) return a[++top]: (D) return a[top++]:9、在一个长度为n的顺序存储的线性表中,向第i个元素(IWiWn+l)位置插入一个新元素时,需要从后向前依次后移( )元素。
(A) n-i (B) n-i+1 (C) n-i-1 (D) i10、采用分段存储管理的系统中,若地址用24位表示,其中8位表示段号,则允许每段的最大长度是( )。
(A) 224(B) 216(C) 28(D) 23211、若根据查找表建立长度为m的线性哈希表,假定对一个元素第一次计算的地址为d,如冲突,则下一次的地址为( )。
(A) d (B) d+1 (C) (d+1) /m (D) (d+1) mod m12、表达式a/ (b-d) +c的波兰表示式为( )。
(A) abdc/-+ (B) abd-/c+ (C) abd/-c+ (D) +-/abdc13、在一个单链表中,若要在P所指向的结点之后插入一个新结点,则需要相继修改( )个指针域的值。
(A) 1 (B) 2 (C) 3 (D)414、将两个各有n个元素的有序表归并为一个有序表时,其最少的比较次数是( )(A) n (B) 2n-l (C) n-1 (D) 2n15、设计一个判别表达式中左、右括号是否配对出现的算法,采用( )数据结构最佳。
(A)线形表的顺序存储结构(B)队列(C)线形表的链式存储结构(D)栈计算机软件技术基础()试 题一、单项选择题(第1-15题,每小题2分,共30分)1、 已知三对角矩阵A[1..9, 1..9]的每个元素占2个单元,现将其三条对角线上的元素逐行存储在起始地址为1000的连续内存单元中则元 素A[7, 8]的地址为()。
“软件技术基础”考题(含答案)

第三十二次一、是非判断题(每小题1分,共10分)( 判断下列各题是否正确,如正确,在客观答题纸上对应编号选A,否则选B )1. 在程序设计中,常用一维数组来表示线性表的顺序存储空间。
( 1 )2. 软件测试的目的是为用户提供没有错误的程序。
( 2 )3. 栈顶的位置只能进行进栈操作不能进行退栈操作。
( 3 )4. 处于等待状态的进程,若其等待的事件已发生,就立即转入运行状态。
( 4 )5. 线性表若采用链式存储表示时其结点之间的存储单元地址可以不连续。
( 5 )6. 在进行插入排序时,其数据比较次数与数据的初始排列有关。
( 6 )7. 数据的逻辑结构是从逻辑关系上描述数据,它与数据的存储结构无关,是独立于计算机的。
( 7 )8. 在操作系统中,进程最基本的特征是静态性和并发性。
( 8 )9. 软件危机是由于软件产品过多而产生的。
( 9 )10.面向过程系统需求分析使用的主要工具是数据流图和数据字典。
( 10 ) 参考答案:ABBBA AABBA二、选择题(每小题1分,共5分)1. 进程从运行状态进入就绪状态的原因可能是(11 )。
11 (A) 时间片用完(B) 等待某一事件(C) 等待的事件已发生(D) 被选中占有处理机2. 需求分析中开发人员主要从用户那里了解(12 )。
12 (A) 软件怎样做(B) 软件做什么(C) 输入的信息(D) 软件的测试3. 队列的操作原则是(13 )。
13 (A) 先进后出(B) 先进先出(C) 只进不出(D) 只出不进4. 在需要经常查找结点的前驱后后继的情况下,使用(14 )比较合适。
14 (A) 单链表(B) 循环链表(C) 双链表(D) 顺序表5. 任何两个并发进程之间(15 )。
15 (A) 一定存在互斥关系(B) 一定存在同步关系(C) 一定彼此独立无关(D) 可能存在同步或互斥关系参考答案:ABBCD第三十一次一、是非判断题(每小题1分,共10分)( 判断下列各题是否正确,如正确,在客观答题纸上对应编号选A,否则选B )1. 数据在计算机内存中的表示是指数据的存储结构。
软件技术基础试题库

《软件技术基础》试题库课程名称:软件技术基础适用专业:软件技术、计算机应用、网络、信息等计算机相关专业第一章概述第二章数据结构一、单项选择题1.若长度为n的线性表采用顺序存储结构,删除它的第i数据元素之前,需要先依次向前移动_______个数据元素.( )A. n-iB。
n+iC。
n-i-1D. n-i+1答案:A2.在单链表中,已知q指的结点是p指的结点的直接前驱结点,若在q和p指的结点之间插入一个由s指的结点,则需执行________。
( )A。
lin k(s)←link(p),link(p)←sB。
link(q)←s,link(s)←pC。
link(p)←link(s),link(s)←pD。
link(p)←s,link(s)←q答案:B3.高度为h(h>0) 的二叉树最少有________个结点。
()A。
hB. h-1C。
h+1D。
2h4.n个顶点的带权无向连通图的最小生成树包含________ 个顶点。
()A。
n-1B。
nC。
n/2D.n+1答案:B5.采用拉链法解决冲突的散列表中,查找的平均查找长度()。
A. 直接与关键字个数有关B. 直接与装填因子a 有关C。
直接与表的容量有关D. 直接与散列函数有关答案:D6.树型结构最适合用来描述()A.有序的数据元素B.无序的数据元素C。
数据元素之间的具有层次关系的数据D。
数据元素之间没有关系的数据答案:C7.若二叉树中度为2的结点有15个,度为1的结点有10个_______个叶结点。
( )A.25B.10C。
16D。
41答案:C 度0的结点比度2的结点多18.若深度为6的完全二叉树的第6层有3个叶结点,则该二叉树一共有______个结点。
( )A。
32B。
33C.34D。
25答案:C9.若某完全二叉树的深度为h,则该完全二叉树中至少有______个结点。
()A.2hC.2h-2D。
2h—1+1答案:C10.在非空二叉树的中序遍历序列中,二叉树的根结点的左边应该()A.只有左子树上的所有结点B.只有左子树上的部分结点C.只有右子树上的所有结点D.只有右子树上的部分结点答案:A11.下面关于哈夫曼树的说法,不正确的是( )A。
《软件技术基础》试卷(研)

研究生《软件技术基础》试卷学院:机械交通学院姓名_____ 成绩__________一、填空(每题2分,共50分)1.多道程序系统中,“并发”是指_____A___。
A.系统中同时存在多个平行的活动。
B. 系统中同时存在多个共享资源。
C. 系统中同时存在多个相同的外设。
C. 系统中同时存在多个独享资源。
2.处理器中存在的活动是_____B_____。
A. 程序B. 作业C. 进程 B. 作业步3.数据结构中的基本单元是__D______。
A.数据项 B. 数据 C. 数据对象 D. 数据元素4.数据结构有两个重要元素,它们是________和_________。
A.数据元素的集合、定义在该集合上的一种关系。
B.数据元素的集合、定义在该集合的多种关系。
C.数据对象、它们之间的一个关系。
D.数据对象、它们之间的多个关系。
5.数据元素间关系的逻辑描述称为____A_____;___D_____在计算机中的映象称为数据的物理结构。
A. 逻辑关系B.逻辑表达C. 逻辑结构D. 物理结构6.链式结构中,结点的指针域存放____B_____结点的地址,该结点的地址在_______结点的指针域中。
A. 上、下B. 下、上C. 上、上D. 上、下7.栈和队结构是___B____结构,分别遵守________、________原则。
A.非线性结构、先进后出、先进先出B.线性结构、先进后出、先进先出C.线性结构、后进先出、先进后出8.循环队列主要解决_______C_____。
A. 队满问题B. 队空问题C. 假上溢D. 假下溢9.链表结构主要由____B_____和_________组成。
A.逻辑结构、物理结构 B. 数据域、指针域 C. 线性结构、非线性结构10.虚拟设备(spooling)利用高速的___B____设备,来模拟低速的____A___设备,并使其转换成__D____设备。
A. 独享B. 共享C. 存储D. 虚拟E. 输出F. 输入G. 直接11.产生死锁的原因之一是_____A____。
软件技术基础试题及答案图文稿

软件技术基础试题及答案集团文件版本号:(M928-T898-M248-WU2669-I2896-DQ586-M1988)软件技术基础班级姓名成绩1分,共25分)1.数据结构作为一门学科,主要研究数据的、存储结构以及三方面内容。
2.当对一个线性表经常进行插入或删除操作时,则宜采用存储结构;而经常进行的是访问操作,而很少进行插入或删除操作时,则宜采用存储结构。
3.在线性结构中,首结点有个前驱结点,其余每个结点有且只有个前驱结点。
4.限定在表的一端进行插入,在表的另一端进行删除的线性表称为;限定在表的一端进行插入和删除运算的线性表称为。
5.一个8阶的下三角矩阵B按行优先顺序压缩存储在一维数组中,则数组的大小应设为。
6.按照二叉树的定义,具有3个结点的二叉树形态有种;具有65个结点的完全二叉树其深度为 ; 深度为10的完全二叉树最多有个结点7.在长度为n的顺序表的第i个位置上插入一个元素,元素的移动次数为;删除第i个元素时,需要从前向后依次前移个元素。
(1≤i≤n+1)8.顺序存储结构的循环队列中,设front 和rear分别为队头和队尾指示器,该队列中能存放的最大元素的个数为M AX-1,则判断队列为满的条件为,而判断队列为空的条件是。
9.设D={A,B,C,D,E},R={<A,B>,<C,D>,<D,B>,<C,E>},结构(D,R)描述的数据结构是。
10.系统出现死锁一定是同时保持了,,和环路条件这四个必要条件。
11.操作系统通过记载、跟踪、控制进程的执行,它是进程存在的唯一标志。
作业调度程序是从处于状态的作业中选取一个作业并把它装入主存。
12A.软件生命周期瀑布模型一般可分为问题分析、、、和软件维护五个阶段。
,二、选择题(每小题1分,共10分)1.已知: int x; 下列语句正确的是()。
A. int *p=&x;B. int *p=x;C. int p=&x;D. int *p=*x;2.int a[ ]={1,2,3,4,5},b[5],*p; 则下列语句中不正确的语句是()。
软件基础知识试题及答案

软件基础知识试题及答案一、单项选择题(每题2分,共10题)1. 在计算机系统中,软件通常被分为哪两大类?A. 系统软件和应用软件B. 硬件软件和网络软件C. 应用软件和网络软件D. 系统软件和硬件软件答案:A2. 以下哪个选项是操作系统的典型功能?A. 文件管理B. 网络通信C. 数据加密D. 所有选项答案:D3. 计算机程序设计语言的发展经历了哪些阶段?A. 机器语言、汇编语言、高级语言B. 汇编语言、高级语言、机器语言C. 高级语言、机器语言、汇编语言D. 机器语言、高级语言、汇编语言答案:A4. 数据库管理系统(DBMS)的主要功能不包括以下哪一项?A. 数据定义B. 数据操纵C. 数据加密D. 数据控制答案:C5. 下列哪个不是网络协议的功能?A. 传输控制B. 路由选择C. 数据加密D. 错误检测答案:C6. 在软件开发过程中,需求分析阶段的主要任务是什么?A. 编写代码B. 设计数据库C. 确定软件需求D. 测试软件答案:C7. 以下哪个不是软件工程的原则?A. 抽象B. 模块化C. 迭代D. 随机性答案:D8. 面向对象编程(OOP)的主要特点不包括以下哪一项?A. 封装B. 继承C. 多态D. 过程性答案:D9. 软件测试的主要目的是什么?A. 修复所有已知错误B. 验证软件功能C. 评估软件性能D. 所有选项答案:D10. 敏捷软件开发方法的核心理念是什么?A. 严格的计划和控制B. 快速响应变化C. 遵循固定开发周期D. 重视文档编写答案:B二、多项选择题(每题3分,共5题)1. 以下哪些属于计算机软件的组成部分?A. 程序B. 数据C. 文档D. 硬件答案:A、B、C2. 软件危机主要表现在哪些方面?A. 软件开发成本高B. 软件项目延期C. 软件质量难以保证D. 软件维护困难答案:A、B、C、D3. 以下哪些是软件设计阶段的主要活动?A. 需求分析B. 架构设计C. 详细设计D. 编码实现答案:B、C4. 软件维护的类型包括哪些?A. 纠错性维护B. 适应性维护C. 完善性维护D. 预防性维护答案:A、B、C、D5. 以下哪些是软件测试的常见方法?A. 黑盒测试B. 白盒测试C. 灰盒测试D. 性能测试答案:A、B、C、D三、判断题(每题1分,共5题)1. 软件是计算机系统中的非硬件部分。
软件技术基础期末考及答案

一、填空题(共10分,每小题2分)1、在顺序链表中,一个元素占用一个存储单元,若一个元素所在结点的地址为p,则其后继结点的地址为p+1 。
2、矩阵A是对称矩阵,为节省空间,将其下三角部分按行为主存储在一维数组B[1..n(n-1)/2]中,对任一下三角部分元素a ij (i≥j),在一维数组B的下标位置k的值i(i-1)/2+j 。
3、在无向图G的邻接矩阵A中,若A[i,j]=1,则A[j,i]等于 1 。
4、设栈S的初始状态为空,若元素的入栈顺序为a1、a2、a3、a4、a5、a6,出栈顺序为a3、a5、a6、a4、a2、a1,则栈的容量至少应该是______4_________。
5、有一种数据结构B=(D,R),其中D={a,b,c ,d,e},R={(a,b),(a,c),(b,c),(c,d),(c,e),(d,e)},它是什么类型的数据结构(线性表、树还是图)图。
二、简答题(共15分,每小题3分)1、下列程序段的时间复杂度是多少?y=10 ; x=2 ;for i = 1 to n-1{ y=y+1;for j = 1 to 2*nx = x + 1;}(n-1)×2n=2n2-2n f(n)=O(n2)2、已知一个图的关联矩阵表示,删除所有从第i个结点出发的边的方法是什么。
在关联矩阵中将第i行所有列置03、在观念世界中,用什么描述事物及事物之间的联系。
在观念世界中用实体描述事物,用概念模型描述事物之间的联系。
4、数据结构的存储方式有几种?它们之间的本质区别是什么?数据结构的存储方式有两种,它们之间的本质区别是存储联系R的方式不同。
5、设线性哈希表的长度为=8,哈希函数为H(i)=mod(k,n),将关键字系列(12,09,04,16,19,20,45,26)依次填入随机哈希表中,并注明冲突次数。
三、分析题(共30分)1、已知一棵二叉树的前序遍历序列为DGKLNM ,中序遍历序列为KNLMGD ,请画出该二叉树,并写出它的后序遍历序列。
软件技术基础试题(14A卷答案)

苏州市职业大学2014─2015学年第二学期试卷标准答案及评分标准《软件技术基础》(集中A卷闭卷笔试)出卷人陶志福出卷人所在系电子信息工程系使用班级14专接本一、填空题(每空1分,共25分)1.数据结构作为一门学科,主要研究数据的逻辑结构、存储结构以及数据操作集合三方面内容。
2.当对一个线性表经常进行插入或删除操作时,则宜采用链式存储结构;而经常进行的是访问操作,而很少进行插入或删除操作时,则宜采用顺序存储结构。
3.在线性结构中,首结点有0 个前驱结点,其余每个结点有且只有 1 个前驱结点。
4.限定在表的一端进行插入,在表的另一端进行删除的线性表称为队列;限定在表的一端进行插入和删除运算的线性表称为栈。
5.一个8阶的下三角矩阵B按行优先顺序压缩存储在一维数组中,则数组的大小应设为36 。
6.按照二叉树的定义,具有3个结点的二叉树形态有 5 种;具有65个结点的完全二叉树其深度为7 ; 深度为10的完全二叉树最多有1023 个结点7.在长度为n的顺序表的第i个位置上插入一个元素,元素的移动次数为n-i+1 ;删除第i个元素时,需要从前向后依次前移n-i 个元素。
(1≤i≤n+1)8. 顺序存储结构的循环队列中,设front 和rear分别为队头和队尾指示器,该队列中能存放的最大元素的个数为M AX-1,则判断队列为满的条件为front == (rear + 1) % MAX ,而判断队列为空的条件是front==rear 。
9. 设D={A,B,C,D,E},R={<A,B>,<C,D>,<D,B>,<C,E>},结构(D,R)描述的数据结构是图。
10.系统出现死锁一定是同时保持了互斥条件,部分分配条件,不可剥夺条件和第1页,共8页环路条件这四个必要条件。
11.操作系统通过pcb(进程控制块)记载、跟踪、控制进程的执行,它是进程存在的唯一标志。
作业调度程序是从处于后备状态的作业中选取一个作业并把它装入主存。
《软件技术基础》试题A4答案

一、填空题:(30分,每空0.5分)1、计算机软件的发展经历了程序设计阶段、程序系统阶段和软件工程阶段三个发展阶段。
(程序、软件、软件产品)2、软件维护包括纠错性维护、完善性维护、适应性维护和预防性维护。
3、软件开发时期通常由总体设计、详细设计、编码和单元设计、综合测试四个阶段组成。
其中前两个阶段又称为系统设计,后两个阶段又称为系统试验。
4、由数据元素组成数据的方式有顺序、选择和重复三种基本类型。
5、对于软件系统的逻辑模型应从经济可行性、技术可行性、法律可行性和操作可行性研究每种解法的可行性。
6、必须严格验证需求的正确性。
一般说来,应该从一致性、完整性、现实性和有效性四个方面进行验证。
7、软件的总体设计分为:系统设计和结构设计两个阶段。
8、模块的最重要特征是:抽象、信息隐藏。
9、模块的独立程度可以由两个定性标准度量,即内聚(块内联系)和耦合(块间联系)。
10、在层次图和结构图中,矩形框代表模块,矩形框之间的连线表示模块间的调用关系。
11、信息流可分为交换流、事务流两种类型。
12、程序设计方法论可分为:自顶向下的程序设计方法、自底向上的程序设计方法。
13、数据库系统由硬件系统、数据库集合、数据库管理系统及相关软件、数据库管理员和用户五部分组成。
14、数据库管理系统应该提供数据定义功能、数据操纵功能、数据库运行控制功能和数据字典几个方面的功能。
15、算法具有的主要性质有:有穷性、确定性、可行性、和拥有足够的情报(有输入数据和确定的输出结果)。
16、基本算法设计方法包括:枚举法(列举法)、归纳法、回溯法、数字模拟法和数值法。
17、数据是信息的载体,是数据元素的集合,数据结构包括数据的逻辑结构和物理(存储)结构。
18、有数据序列:ACBKHJ,若该序列为入队序列,则其出队序列为ACBKHJ,若该序列为入栈序列,则出栈序列为JHKBCA。
二、简答题(40分,每个5分)1、软件工程的基本原理有哪些?答:(1) 用分阶段的生命周期计划严格管理(2) 坚持进行阶段评审(3) 实行严格的产品控制(4) 采用现代程序设计技术(5) 结果应能清楚地审查(6) 开发小组的人员应该少而精(7) 承认不断改进软件工程实践的必要性2、什么是数据字典?简要说明其主要内容及用途。
1软件技术基础

1软件技术基础1.当小明双击桌面上“我的电脑”图标后,会()。
A.移动我的电脑图标B.弹出一个菜单C.打开我的电脑窗口D.选中我的电脑图标2.以下4个同学操作电脑的姿势,()是不正确的。
A.小陈同学将腰部挺直,两肩挺起,两脚自然踏放,腰部以上身躯向后倾B.小丁同学将大臂自然下垂,小臂和手腕自然平抬C.小马同学将手指略弯曲,左右食指、中指、无名指、小指轻放在基本键上D小李同学将左右拇指指端的下侧面轻放在空格键上3.小杨同学要用计算机打出自己的年龄,但是他不会用键盘,请你告诉他以下()键区可以输出数字。
(选择两项)A.功能键区B.打字键盘区C.编辑键区D.数字小键盘区4.小张要在记事本中输出“+”,他可以采用下面的()方法。
(选择两项)A.直接按打字键盘区的等号键B.按住Shift,再按打字键盘区的等号键C按Caps Lock指示灯亮起后,再按打字键盘区的等号键D.当Num Lock指示灯亮起后,按数字小键盘区的加号键5.以下()是记事本不能做的。
A.编辑英文B.编辑中文C.编辑图片D.编辑程序6.在Word 2007的编辑状态下,当前正在编辑一个新建文档“文档1”,单击“保存”按钮后,将()。
A.打开“另存为”对话框,供进一步操作B.屏幕提示非法操作C.关闭文档窗口,“文档1.”存入临时文件夹D“文档1”自动以“文档1.docx”为名存盘7.Word2007的查找、替换功能非常强大,下面叙述中正确的是()。
A.不可以指定查找文字的格式,只可以指定替换文字的格式B.可以指定查找文字的格式,但不可以指定替换文字的格式C.不可以按指定文字多格式进行查找及替换D.可以按指定文字的格式进行查找及替换8.在Word2007主窗口的右上角,不可以同时显示的按钮是()。
A.还原和最大化B.还原和关闭C.最小化、还原D.最小化、还原和关闭9.设定打印纸张大小的时候,应当使用的选项卡命令是()。
A.“视图”—“工具栏”B.“视图”—“页面”C.“文件”—“工具栏”D.“页面布局”—“页面设置”10.在Word的编辑状态下,光标在文档中,没有对文档进行任何选取,设置2倍行距后,结果将是()。
软件技术基础(样卷)

8、用对分查找法在有序表{3,4,10,13,33,42,63,76,78,95,96,120}中查找13时,
比较次数是()
A. 2B. 3C. 4D. 5
9、下列排序方法中,序
void abc(structRedTypeL[ ], int n)
{int i, j = 1, flag = 1;
struct RedType x;
while ( (j < n) && (flag > 0) )
{flag=0;
for (i = 1;i <= n-j; i++)
if (L[i+1].key < L[i].key)
5、给定关键字序列{19,24,14,55,76,35,28,31,63,45},取散列函数H(K)= K MOD 11;试构造下面散列表(分别用线性探测再散列法和链地址法处理)。
(此题10分)
0
1
2
3
4
5
6
7
8
9
10
11
6、对于序列{10,8,30,15,28,12,24},欲排成从小到大的序列,用手工方法跟踪如下排序算法,写出其中间过程序列:(1)直接插入排序;(2)堆排序;(此题16分)
5、一个堆栈的输入序列为1,2,3,4,下面哪一个序列可能是这个堆栈的输出序列()
A. 3,1,2,4 B. 2,3,4,1 C. 4,3,1,2 D. 4,2,3,1
6、如图所示的4棵二叉树中,()不是完全二叉树。
A.B.C.D
江苏大学试题第2页
7、对于如下图所示的带权有向图,哪一个不是从顶点1出发作深度优先遍历的结点序列()
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件技术基础考卷2014-2015年一、论述软件测试与调试的异同点(10分)二、说明软件模块化的思想和优劣点(10分)基本思想:在系统建立之前信息就能被充分理解。
它要求严格划分开发阶段,用规范的方法与图表工具有步骤地来完成各阶段的工作,每个阶段都以规范的文档资料作为其成果,最终得到满足用户需要的系统。
优点:(1)逻辑设计与物理设计分开(2)开发过程中形成一套规范化的文档,便于后期的修改和维护缺点:(1)开发周期长(2)系统难以适应环境的变化(3)开发过程复杂繁琐三、(15分)1设计算法,对链表方式存储的二叉树T,判断该树T是否为排序二叉树。
2设计算法,找到无向图中度最大的结点。
(20分)四、(15分)在同义词词典程序的设计中,需要存贮同义词。
根据功能设计存储机构,以类C语言描述存储结构并给出注释说明,并给出查找给定词word所有同义词的算法。
2011—2012年一、评价程序的方法二、软件设计中,需求分析阶段所用方法三、设计算法实现哈希排序四、设计算法输出图中节点的入度和出度五、设计算法将十进制数以八进制数输出六、求二叉树的叶节点数2009-2010 学年第一学期期末试卷学号姓名成绩考试日期:2009年12月 23 日考试科目:《软件技术基础》(A卷)注意事项:1、考试时间120分钟题目:一、论述问题(本题共 40 分)1、在一个算法中,时间与空间往往构成一对矛盾体,论述并举例说明解决时间的有效方法。
(本小题15分)论述解决时间的有效方法:1)增加存储空间是解决问题的一种方法2)有效的算法是解决问题的有效方法举例:任何例子,能反映算法有效性都可以。
2、论述并举例说明软件工程中的测试与调试之间的相同点与不同点?(本小题10分)答题要点及分数:1)软件调试是编码过程中校正代码的过程2)软件测试是软件工程中一个评价软件的过程3)相同点在于试图考证程序的正确与否4)不同点在于组织方式,实施方法以及结果处理等几个方面组织方式:调试工作由程序员完成,测试需要独立的小组实施方法:调试基于代码级,测试可以是白盒子也可以是黑盒子结果处理:调试中发现的错误要改正,测试中只记录测试结果3、阐述图与二叉树的相同点和不同点,在此基础上,阐述二叉树的前序遍历算法与图的深度优先遍历算法的相同点和不同点?(本小题15分)1)图与二叉树都是非线性结构2)图与二叉树之间的不同点是:二叉树中不同点的后继集合不相交,而图则不然3)遍历算法中的相同点:访问当前结点,然后访问该结点的后继结点(邻结点)。
4)遍历算法中的不同点:对于图的访问,访问结点时需要记录已访问标志,访问结点的邻结点时需要判断是否已访问;对于二叉树而言,访问邻结点时,不需要记录与判断。
二、假设在数组A[N]中存贮N个整数,设计算法change(int *A, int *B, int N),其中N为数组A中元素的个数,该算法将数组A中整数移动到数组B中,使得数组B中的元素呈现小、大、小、大间隔的形式,即B[0]<B[1], B[1]>B[2], B[2]<B[3], B[3]>B[4],……,而且相邻两元素值之间的差的绝对值随下标值的增加呈现不增加趋势,例如|B[0]-B[1]|≥|B[1]-B[2]|≥|B[2]-B[3]| (本题20分)1、排序用冒泡排序法对数组A排序:数组A的元素两两比较,大的放在后面(即若前面的大于后面的,交换两元素的为止)。
循环执行直到不交换为止。
2、移动定义两个变量i,j。
初始i= 0;j = N- 1。
定义一个变量m ,初值为0。
循环执行以下操作:B[m] = A[i];B[m+1] = A[j];m += 2;i++;j--;直到i >= j最后if(i == j)B[m] = A[i];算法的核心是对数组A实现从小到大的排序,然后从A数组的左右两端分别取数据,顺序放入B数组。
三、假设每个人的信息仅包括姓名,年令和性别,在某信息管理系统中,经常需要查找同令人的姓名,设计物理存贮结构,使得查找过程方便快速,并给出相应的查找给定年令的算法,分析该算法的性能。
(本题 20 分)存储结构的核心是:以年令age为关键字的hash散列,散列函数是age-1;冲突的解决方法是链表。
分数安排如下:1)存贮结构:画图,类C描述,文字描述都可以以年龄age为关键字,哈希散列函数为H = age – 1;冲突解决办法为链表如图:2) 查找算法:函数原型描述(即假设的已知条件),算法描述(包括根据年令访问数组,单向链表的访问)LPFIND(int age ,CString name){H(age)= age – 1;p = H(age);if(p == NULL) return NULL;while(p != NULL){if(p->name == name)retutn p;p = p->next;}3)算法分析:给出平均比较次数的概念根据age 查找同龄人的姓名(由哈希查找的特点),不需要比较直接由哈希散列函数求出。
假设某年龄age的人数为n,即有n人同龄。
那么查找第i个人需要比较的次数为i次。
又假设查找每个人的概率相同,均为1/n;i,i = 1,2,… ,n;那么平均比较次数为: )/1*(n= (1+n)/2四、假定二叉树存贮对象是整数,修改二叉树非递归前序遍历算法,使其能求得二叉树中最大元素。
(本题20 分)1)写出算法:包括函数原形,算法内容2)将遍历算法中访问结点的语句改为求最大值的比较语句int Max(BTREE T){int temp;BTREE stack[M],p;int top = -1;if(T != NULL){temp = T->data;p = T;while(p!= NULL||top != -1){while(p!=NULL){if(p->data > temp)temp = p->data;if(p->rchild != NULL)stack[++top] = p->rchild;p = p->lchild;}p = stack[top --];}}return temp;}2007-2008年一、简述软件工程中几个阶段,分别描述各阶段的主要工作二、程序设计中时空性经常会出现矛盾,这种矛盾是如何体现的,你认为解决和优化时间和空间的方法是什么三、设计程序,求二叉树的叶节点个数四、修改Dijkstra的求最短路径的算法,使其能求出图中任意两点之间的最短距离和最短距离所在的路径五、设计一种数据结构用于存储一组人的姓名、年龄及月收入,要求在该结构上能方便地查找同龄人,计算同龄人的月平均收入,给出查找同龄人和计算月平均收入的两个算法。
六、给出利用堆栈模拟队列的方法,即假设已知堆栈的运算,如压栈,出栈,栈空判断,模拟实现队列的入队,出对及队空算法复习题一、名词解释:1. 数据结构——数据结构就是数据的组织形式,也可看成是包含数据结构的数据表,说明数据之间存在着一定的相互关系或约束。
2. 逻辑结构——我们把只表现元素之间逻辑关系,而不涉及它们在计算机中的表示,只是理论的、反映在纸面上的东西,这种抽象的数据结构称为逻辑结构。
3. 物理结构——抽象的数据结构在计算机内的表示,也就是映射在存储空间上的、具体的数据结构在计算机内表示,也就是映射在存储空间上的、具体的数据结构。
二、问答题:1.简述“软件工程”的工程化的思想。
答:软件工程就是应用一些科学理论和工程上的技术来指导软件开发。
软件工程将研制软件的全过程分为六个阶段:问题说明,需求分析,系统设计,编写程序,测试工作,运行与维护。
软件工程的基本原则是:划分软件生命期,运行计划评审,编制软件文档。
2.说明对程序进行评价时,“时间”与“空间”之间的关系。
答:时间性和空间性是程序的效率问题。
时间效率决定于:源程序转换为目标程序的时间和目标程序执行的时间。
时间效率与编译质量有关,与算法的简化程度有关,还与用户对语言的熟练程度有关,其中,算法的效率起主要作用。
空间效率一般指程序花费的内存空间的问题。
对于同等复杂程度的程序:一般时间效率越高的程序,占用的内存就越大,空间效率就越低;一般时间效率越低的程序,占用的内存就越小,空间效率就越高。
两者具有一定的矛盾性。
但是随着内存容量的不断增大,往往会牺牲空间性来提高时间性。
3.依照“软件工程”的思想,叙述软件生命周期的不同阶段及各阶段的主要工作内容。
答:在软件工程中,把从软件的计划开始,经历问题的说明(定义),需求分析,设计代码,测试与维护,直到软件报废为止的整个期间,称为软件的生命周期。
在软件生命周期中,除了最后的运行与维护属于运行期,其它都称为开发期。
1)问题说明:对研究的问题进行完整而且适当的说明。
2)需求分析:根据问题说明,确定软件必须具有的功能。
不是具体解决问题,而是明确必须“做什么”。
3)系统设计:将反映用户要求的逻辑模型转换为一个具体的设计方案,使用伪码来描述算法。
4)编写程序:将伪码转换为高级语言的形式。
5)测试工作:检查程序和系统的其他部分是否满足设计要求。
6)运行与维护:将验收后的软件交付用户使用,通过实际运行环境的检验,对不适应的部分进行修改和扩充。
4.拓扑排序中使用了那些数据结构——共使用了数组,链表,图和堆栈四种数据结构。
三、求二叉树的叶节点的个数:algorithm countleaf( Tree *t, int count ){if( t != null ){if( t->lchild == null && t->rchild == null )count++;coutleaf( t->lchild, count );coutleaf( t->rchild, count );}}四、求二叉树深度的算法:algorithm depth( Tree *t ){if( t == null )return( 0 );else{hl = depth( t->lchild );hr = depth( t->rchild );if( hl > hr )return( hl + 1 );elsereturn( hr + 1 );}}五、将二叉树的左右孩子交换的算法:algorithm swap( Tree *b ){Tree *t;if( b == null )return;else{t = b->lchild;b->lchild = b->rchild;b->rchild = t;swap( b->lchild );swap( b->rchild );}}六、用两个栈模拟一个队列:algorithm 用两个栈模拟一个队列{stack s1, s2; // 容量都为n。