《计算机软件技术基础》试题及答案
- 格式:pdf
- 大小:13.36 KB
- 文档页数:2
全国计算机软件技术考试试题及答案考试科目:计算机软件技术基础试题一问题描述:编写一个程序,实现输入一个整数,输出该整数的阶乘。
答案: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)以上为三道试题的答案,希望能够帮助您顺利通过全国计算机软件技术考试。
二级等级考试软件技术基础试题及答案一、选择填空题:1.栈和队列是两种特殊的线性表,栈的特点是(D ),队列的特点是(C),二者的共同特点是只能在它们的(A)处添加和删除结点。
A.端点B.中间点 C.先进先出D.后进先出2.线性表结构的查找方法有顺序查找法,二分查找法等。
顺序查找法适用于查找(A或B)或(B或A)的线性表,二分查找法只适用于查找顺序存储的( C )的线性表。
A.顺序存储B.链接存储 C.索引存储D.已排序E.未排序3.下图所示的二叉树中的分支结点有(A);按前序法遍历该二叉树得到的结点序列是(C);按中序遍历该二叉树得到的结点序列是(B);按后序法遍历得到的结点序列是(D)。
AB DC EI H FJ GA.A、B、C、D、E、F B.BICAHEJFGDC.ABCIDEHFJG D.ICBHJGFEDA4.在一棵二叉树中,如果所有分支结点都存在左子树和右子树,并且所有叶结点都在同一层上,这样的二叉树称为( C );如果一棵二叉树至多只有最下面的两层上的结点度数可以小于2,并且最下一层上的结点都集中在该层最左边的若干位置上,此二叉树称为(A);二叉排序树左子树上所有结点的关键字均( D )根结点的关键字;右子树上所有结点的关键字均(G )根结点的关键字。
A.完全二叉树B.非完全二叉树 C.满二叉树D.小于E.大于F.小于等于G.大于等于5.(B )查找要求查找表中的数据是有序的,而(A)查找不要求查找表中的数据是有序的。
( C )排序是顺序地把待排序列中的各个元素按其排序码的大小,插入到已排序的适当位置上;( E )排序是不断从待排序的序列中选取排序码最小的数据元素放到已排序的元素列的后面,直到序列中所有记录都已排序为止;( F )排序是每次对相邻两个元素的排序码进行比较,当不符合次序即交换位置,直到所有相邻两元素的次序合理为止。
A.顺序B.二分C.简单插入D.快速E.简单选择F.冒泡 G.归并6.SA法的SD法是软件开发过程常用的方法,人们使用SA法可以得到( D ),这种方法采用的基本手段同(A);使用SD法时可以得到(C ),并可实现( B )。
计算机软件技术基础复习题和思考题答案1.5.1 复习题1. 解释计算机程序的概念。
计算机程序(computer programs),简称程序,是指计算机的指令序列。
2. 什么是源代码程序?源代码是指以程序设计语言编写的、可读的语句和声明的集合,程序设计人员的工作就是使用程序设计语言编写源代码,源代码经过编译后转变为计算机可以执行的程序。
3. 什么是可执行程序?可执行程序是指包含了计算机可以直接执行的指令的文件。
为了与源代码相区别,可执行程序又被称为二进制代码。
4. 什么是计算机软件技术?计算机软件技术是与软件的设计、实施和使用相关的多种技术的统称。
软件的设计与实施涉及到程序设计语言、算法和数据结构、数据库系统、多媒体、软件工程等技术,软件的使用涉及到质量、可靠性、专利、知识产权、道德、法律等管理和技术。
5. 如何对软件进行分类?可以根据软件的功能进行分类,也可以根据软件的不同开发方式进行划分,还可以从软件的使用方式进行分类。
根据软件的功能来划分是一种主要的分类方式,可以把软件分为系统软件、编程软件和应用软件3大类型。
6. 什么是系统软件?系统软件(system software)指管理和控制计算机硬件、使计算机工作的软件。
系统软件是一种非常重要的软件类型,它为用户提供了一种操作计算机硬件的便捷方法,为其他程序提供了运行的基础。
7. 常见的系统软件有哪些?根据系统软件的功能特点,可以继续划分为操作系统、设备驱动程序、实用工具以及其他系统软件。
8. 什么是操作系统?操作系统(operating system,OS)是位于计算机系统中的硬件和软件之间的接口,负责管理和协调计算机硬件的操作和计算机有限资源的共享。
9. 列出3个典型的操作系统。
主要的操作系统包括微软公司的Windows系列操作系统、Unix和类Unix操作系统、苹果公司的Mac OS X操作系统、Linux操作系统等。
任意列出3个即可。
10. 什么是编程软件?编程软件(programming software)又称为编程工具(programming tool)或软件开发工具(software development tool),是一种软件开发人员用于创建、调试、维护其他程序和应用软件的软件工具。
《计算机软件技术基础(1)》在线作业一1. 在设计阶段,当双击窗体上的某个控件时,所打开的窗口是()。
A. 工程资源管理器窗口B. 工具箱窗口C. 代码窗口D. 属性窗口正确答案:C 满分:5 分得分:52. 下面哪条语句可以正确地声明一个动态数组:()。
A. Dim A(n) As IntegerB. Dim A(1 To n) As IntegerC. Dim A() As IntegerD. Dim A( , ) As Integer正确答案:C 满分:5 分得分:53. 从键盘上输入两个字符串,分别保存在变量str1、str2中。
确定第二个字符串在第一个字符串中起始位置的函数是()。
A. LeftB. MidC. StringD. Instr正确答案:D 满分:5 分得分:54. 下列叙述中正确的是()。
A. 在窗体的Form_Load事件过程中定义的变量是全局变量B. 局部变量的作用域可以超出所定义的过程C. 在某个Sub过程中定义的局部变量可以与其它事件过程中定义的局部变量同名,但其作用域只限于该过程D. 在调用过程时,所有局部变量被系统初始化为0或空字符串正确答案:C 满分:5 分得分:55. 设标签Label1的Caption属性值为默认值,则该标签控件Name属性和Caption属性的值分别为()。
A. “Label”、“Label”B. “Label1”、“Label1”C. “Label”、“Label1”D. “Label1”、“Label”正确答案:B 满分:5 分得分:56. 下面的动作中,不能引发一个按钮Click事件的是:()。
A. 在按钮上单击B. 在按钮上右击C. 把焦点移至按钮上,然后按回车键D. 如果按钮上有快捷字母,按“Alt+该字母”正确答案:B 满分:5 分得分:57. 在窗体Form1的Click事件过程中有以下语句:Label1.Caption=”Visual BASIC”设标签的原Caption属性值为默认值,则该语句执行之后该标签控件Name属性和Caption属性的值分别为()。
《计算机软件技术基础(1)》在线作业二一、单选题(共 10 道试题,共 50 分。
)1. 表达式 5 Mo 3+3\5*2的值是()。
. 0. 2. 4. 6正确答案:2. 设x=4,y=8,z=7,以下表达式的值x<y n (Not y>z) Or z<x是()。
. 1. -1. Tru. Fls正确答案:3. 当一个复选框被选中时,它的Vlu属性的值是()。
. 3. 2. 1. 0正确答案:4. 以下关于Msgox的叙述中,错误的是()。
. Msgox函数返回一个整数. 通过Msgox函数可以设置信息框中图标和按钮的类型. Msgox语句没有返回值. Msgox函数的第二个参数是一个整数,该参数只能确定对话框中显示的按钮数量正确答案:5. 以下关于多重窗体程序的叙述中,错误的是()。
. 用Hi方法不但可以隐藏窗体,而且能清除内存中的窗体. 在多重窗体程序中,各窗体的菜单是彼此独立的. 在多重窗体程序中,可以根据需要指定启动窗体. 对于多重窗体程序, 需要单独保存每个窗体正确答案:6. 以下叙述中错误的是()。
. 在KyPrss事件过程中不能识别键盘的按下与释放. 在KyPrss事件过程中不能识别回车键. 在Kyown和KyUp事件过程中,将键盘输入的""和""视作相同的字母. 在Kyown和KyUp事件过程中,从大键盘上输入的"1"和从右侧小键盘上输入的"1"被视作不同的字符正确答案:7. 以下叙述中错误的是()。
. 事件过程是响应特定事件的一段程序. 不同的对象可以具有相同名称的方法. 对象的方法是执行指定操作的过程. 对象事件的名称可以由编程者指定正确答案:8. 在窗体上画一个名称为Timr1的计时器控件,要求每隔0.5秒发生一次计时器事件,则以下正确的属性设置语句是()。
. Timr1.Intrvl=0.5. Timr1.Intrvl=5. Timr.Intrvl=50. Timr1.Intrvl=500正确答案:9. 以下关于文件的叙述中,错误的是()。
第1章习题部分答案1. 操作系统的发展分为那几个阶段?解:操作系统的发展经历了三个阶段:操作系统的酝酿阶段、操作系统的形成阶段、操作系统的理论化和标准化阶段。
2. 计算机软件技术开发系统包括那几个阶段?解:计算机软件开发系统的发展经历了四个阶段:机器语言阶段、汇编语言阶段、高级语言阶段、面向对象语言和可视化语言阶段。
3. 计算机软件技术的主要范畴是什么?解:计算机软件技术的主要范畴包括软件工程技术、程序设计技术、软件工具环境技术、系统软件技术、数据库技术、实时软件技术、网络软件技术、与实际工作相关的软件技术等八个领域的内容。
4. 从软件技术的发展现状来看有哪些值得我们注意的问题?解:从软件技术的发展现状来看有以下几个值得我们注意的问题:1)软件危机2)软件技术标准,软件版权和软件价值评估3)软件技术的基础研究。
1第2章习题部分答案1. 什么是软件危机?软件危机的表现有哪些?解:软件开发技术的进步为能满足发展的要求,在软件开发中遇到的问题找不到解决的方法,问题积累起来形成了尖锐的矛盾,导致了软件危机。
2. 软件危机产生的原因是什么?解:造成软件危机的原因是由于软件产品本身的特点以及开发软件的方式、方法、技术和人员引起的。
1)软件规模越来越大,结构越来越复杂。
2)软件开发管理困难而复杂。
3)软件开发费用不断增加。
4)软件开发技术落后。
5)生产方式落后。
6)开发工具落后,生产率提高缓慢。
3. 常见的软件过程模型有哪些?解:常见的软件过程模型有瀑布模型、增量模型、演化过程模型、敏捷开发4. 如何对软件质量进行评价?解:软件质量的评价主要围绕可维护性、可靠性、可理解性和效率这几个方面进行。
2第3章习题部分答案1. 软件可行性研究的目的是什么?软件可行性研究的任务又是什么?解:软件可行性研究的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。
可行性研究的任务首先需要进行概要的分析研究,初步确定项目的规模和目标,确定项目的约束和限制,把他们清楚地列举出来。
数据结构习题答案第一节概论一、选择题1.要求同一逻辑结构的所有数据元素具有相同的特性,这意味着( )。
A.数据元素具有同一的特点 *B.不仅数据元素包含的数据项的个数要相同,而且对应数据项的类型要一致 C.每个数据元素都一样 D.数据元素所包含的数据项的个数要相等2.数据结构是一门研究非数值计算的程序设计问题中计算机的( (1) )以及它们之间的( (2) )和运算的学科。
(1) A.操作对象 B.计算方法 *C.物理存储 D.数据映像(2) A.结构 *B.关系 C.运算 D.算法3.数据结构被形式地定义为(D,R),其中D是( (1) )的有限集合,R是D上( (2) )的有限集合。
(1) A.算法 *B.数据元素 C.数据操作 D.逻辑结构(2)A.操作 B.映像 C.存储 *D.关系4.在数据结构中,从逻辑上可以把数据结构分为( )。
A.动态结构和静态结构 B.紧凑结构和非紧凑结构 *C.线性结构和非线性结构 D.内部结构和外部结构5.线性表的顺序存储结构是一种( )的存储结构。
*A.随机存取 B.顺序存取 C.索引存取 D.Hash存取6.算法分析的目的是( )。
A.找出数据结构的合理性 B.研究算法中的输入和输出的关系 *C.分析算法的效率以求改进 D.分析算法的易懂性和文档性7.计算机算法指的是( (1) ),它必须具备输入、输出和( (2) )等五个特征。
(1) A.计算方法 B.排序方法 *C.解决某一问题的有限运算序列D.调度方法(2) A.可行性、可移植性和可扩充性 *B.可行性、确定性和有穷性 C.确定性,有穷性和稳定性 D.易读性、稳定性和安全性8.线性表若采用链表存储结构,要求内存中可用存储单元的地址( )。
A.必须是连续的 B.部分必须是连续的 C.一定是不连续的 *D.连续不连续都可以9.在以下的叙述中,正确的是( )。
A.线性表的线性存储结构优于链式存储结构 *B.二维数组是它的每个数据元素为一个线性表的线性表 C.栈的操作方式是先进先出 D.队列的操作方式是先进后出10.根据数据元素之间关系的不同特性,以下四类基本的逻辑结构反映了四类基本的数据组织形式,其中解释错误的是( )。
《计算机软件技术基础》试题答案一、选择题(每题5分,共30分)1. 下列关于软件工程的描述,错误的是(D)。
A. 软件工程是计算机科学的一个分支B. 软件工程的目标是提高软件质量和生产率C. 软件工程包括软件开发、维护和管理等方面D. 软件工程只关注大型软件的开发2. 下列哪种编程范式主要用于描述程序逻辑和数据的结构?(B)A. 面向过程编程B. 面向对象编程C. 函数式编程D. 逻辑编程3. 下列关于软件测试的描述,错误的是(C)。
A. 软件测试是软件开发过程中的重要环节B. 软件测试的目的是发现和修正软件中的错误C. 软件测试无需考虑软件的性能和稳定性D. 软件测试分为单元测试、集成测试和系统测试等阶段4. 下列关于软件维护的描述,正确的是(B)。
A. 软件维护是指对软件进行升级和优化B. 软件维护包括纠正软件错误、改进软件性能和增加新功能等C. 软件维护不需要考虑软件的可维护性D. 软件维护仅限于软件开发完成后5. 下列关于软件项目管理工具的描述,错误的是(D)。
A. 软件项目管理工具可以协助项目经理进行项目规划B. 软件项目管理工具可以协助项目经理进行项目监控C. 软件项目管理工具可以协助项目经理进行项目沟通D. 软件项目管理工具无法协助项目经理进行项目风险管理二、填空题(每题5分,共30分)1. 软件生命周期可以分为______、______、______、______和______五个阶段。
答案:需求分析、设计、实现、测试、维护2. 在面向对象编程中,一个对象通常包括______和______两部分。
答案:属性、方法3. 软件测试的目的是______、______和______。
答案:发现错误、修正错误、提高软件质量4. 软件维护的类型包括______、______、______和______。
答案:纠错性维护、适应性维护、完善性维护、预防性维护5. 软件项目管理工具主要包括______、______、______和______。
《计算机软件技术基础》参考答案及评分标准一、单项选择题(每空1分,共50分)评分标准:每空1分,错选、多选、漏选均不得分。
51.(本题共10分)评分标准:每空2分,如果答案比较接近正确答案给1分。
52.(本题共10分)缺页中断率f= 9/12=75%缺页中断率f= 7/12=58.3%评分标准:每小题5分,共10分。
其中缺页中断行1分,每出现一处错误扣0.5分,出现两处或以上错误,本 项得0分。
中断率计算1分,写对公式得0.5分。
如果未写计算公式结果正确,不扣分; 如果未写公式但结果有误,则本项得0分。
页面调试3分。
每当有一列中有错误则扣0・5分,至本项扣至0分为止。
53 .(本题共10分)对11个元素进行折半查找的判定树如下图所示:第i 层的元素的查找长度为i,所以平均查找长度为jffi = ^Q+2x2÷3x4⅞4x <) = 3LRU评分标准:判定树6分,当有一个元素的位置错误时扣0・5分。
平均查找长度4分。
如果直接写结果,则结果正确得4分,结果为5、5.5 或6得2分,结果为2至4间某数得1分。
如果写有过程,正确指明查找每个元素的概率得1分,给出每个元素的查找长度得1分,计算公式正确得1分,结果正确得1分。
54.(本题共10分)进行堆排序的过程如下:初始记录: 46 24 53 34 36 58 86 75 37 44第1趟排序: 36 75 58 37 44 46 53 34 24 [86]第2趟排序: 24 44 58 37 36 46 53 34 [75 86]第3趟排序: 34 44 53 37 36 46 24 [58 75 86]第4趟排序: 24 44 46 37 36 34 [53 58 75 86]第5趟排序: 24 44 34 37 36 [46 53 58 75 86]第6趟排序: 36 37 34 24 [44 46 53 58 75 86]第7趟排序: 24 36 34 E37 44 46 53 58 75 86]第8趟排序: 34 24 E36 37 44 46 53 58 75 86]第9趟排序: 24 E34 36 37 44 46 53 58 75 86]即最终排序结果为:24 34 36 37 44 46 53 58 75 86o评分标准:每趟排序结果和最终排序结果正确得1分,如果该行有错,则出现一处错误扣0.5分,出现两处或以上错误本行得。
《计算机软件技术基础(1)》在线作业二1. 以下关于MsgBox的叙述中,错误的是()。
A. MsgBox函数返回一个整数B. 通过MsgBox函数可以设置信息框中图标和按钮的类型C. MsgBox语句没有返回值D. MsgBox函数的第二个参数是一个整数,该参数只能确定对话框中显示的按钮数量正确答案:D 满分:5 分得分:52. 当一个复选框被选中时,它的Value属性的值是()。
A. 3B. 2C. 1D. 0正确答案:C 满分:5 分得分:53. 在窗体上画一个名称为Timer1的计时器控件,要求每隔0.5秒发生一次计时器事件,则以下正确的属性设置语句是()。
A. Timer1.Interval=0.5B. Timer1.Interval=5C. Timer.Interval=50D. Timer1.Interval=500正确答案:D 满分:5 分得分:54. 以下叙述中错误的是()。
A. 事件过程是响应特定事件的一段程序B. 不同的对象可以具有相同名称的方法C. 对象的方法是执行指定操作的过程D. 对象事件的名称可以由编程者指定正确答案:D 满分:5 分得分:55. 设x=4,y=8,z=7,以下表达式的值x<y And (Not y>z) Or z<x是()。
A. 1B. -1C. TrueD. False正确答案:D 满分:5 分得分:56. 以下叙述中错误的是()。
A. 在KeyPress事件过程中不能识别键盘的按下与释放B. 在KeyPress事件过程中不能识别回车键C. 在KeyDown和KeyUp事件过程中,将键盘输入的"A"和"a"视作相同的字母D. 在KeyDown和KeyUp事件过程中,从大键盘上输入的"1"和从右侧小键盘上输入的"1"被视作不同的字符正确答案:B 满分:5 分得分:57. 表达式5 Mod 3+3\5*2的值是()。
《计算机软件技术基础》试题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中。
《计算机软件技术基础》参考答案A一、单项选择题(每空1分,共50分)1-5 CBCBD 6-10 ADDCB11-15 ACABB 16-20 BLJCI21-25 CCABC 26-30 BADAB31-35 BCDBA 36-40 DDCDA41-45 DDCAC 46-50 BBCAB评分标准:本题每空1分,多选、少选、错选均不得分。
二、本题10分(1) v != NULL或v(2) x > v->val 或x != v->val(3) p->next(4) u->next(5) head->next评分标准:本题10分,每空2分,在(3)-(5)中未写出next扣1分三、本题10分(1) A!=NULL && B!=NULL(2) A->data==B->data(3) B=B->next;(4) A!=NULL(5) last->next=NULL;评分标准:本题10分,每空2分,在(2)中未写出data扣1分,在(3)和(5)中未写出next扣1分四、本题10分解:(1) A、B、C三个进程之间存在互斥的制约关系。
因为打印机属于临界资源,必须一个进程使用完之后另一个进程才能使用。
(2)mutex:用于互斥的信号量,初值为1。
各进程的代码如下:进程A 进程B 进程C... … ...... … ...P(mutex) P(mutex) P(mutex)申请打印机申请打印机申请打印机使用打印机使用打印机使用打印机V(mutex) V(mutex) V(mutex)… … …评分标准:本题10分,(1)题3分,(2)题7分,其中给出信号量含义和初值1分,三个进程代码各2分五、本题10分解:FIFO淘汰算法:内存块为3时,缺页中断(或称缺页次数、页面故障)为9;内存块为4时,缺页中断为10。
LRU淘汰算法:内存块为3时,缺页中断为10评分标准:本题10分,FIFO淘汰算法两种情况各3分,LRU淘汰算法1分,要求有分析过程六、本题10分解:段式存储管理的地址转换过程为:(1)根据逻辑地址中的段号查段表的相应栏目;(2)根据段内地址<段长度,检查地址是否越界;(3)若不越界,则绝对地址=该段的主存起始地址+段内地址。
计算机软件技术基础课后答案【篇一:《计算机软件技术基础》复习题(含答案)】txt>1.线性表的链式存储结构与顺序存储结构相比优点是a. 所有的操作算法实现简单c. 便于插入和删除 b. 便于随机存取d. 便于利用零散的存储器空间2.线性表是具有n个的有限序列。
a. 表元素d. 数据项 b. 字符 c. 数据元素e. 信息项3.若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素的算法的时间复杂度为c 。
(1≤i≤n+1)a. o(0)b. o(1)2c. o(n) d. o(n)4.设a是一个线性表(a1,a2,?,an),采用顺序存储结构,则在等概率的前提下,平均每插入一个元素需要移动的元素个数为 b,平均每删除一个元素需要移动的元素个数为 a;若元素插在ai与ai+1之间(0≤i≤n-1)的概率为元素所要移动的元素个数为 c; 2(n?i),则平均每插入一个n(n?1) n?1 22n?1c.3a. n 23n?1d. 4b.5.下列函数中,按它们在n??时的无穷大阶数,最大的是 d。
a. lognb. nlognn/2c. 2 d. n!6.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. nc. n-1b. 2n-1 d. 2n13.用单链表表示的链式队列的队头在链表的a 位置。
a. 链头b. 链尾c. 链中14.若用单链表表示队列,则应该选用。
a. 带尾指针的非循环链表b. 带尾指针的循环链表c. 带头指针的非循环链表d. 带头指针的循环链表15.在解决计算机主机与打印机之间速度不匹配问题时,通常设置一个打印数据缓冲区,主机将要输出的数据依次写入该缓冲区,而打印机则从该缓冲区中取出数据打印,先放入打印缓冲区的数据先被打印。
数据结构习题答案第一节概论一、选择题1.要求同一逻辑结构的所有数据元素具有相同的特性,这意味着( )。
A.数据元素具有同一的特点B.不仅数据元素包含的数据项的个数要相同,而且对应数据项的类型要一致C.每个数据元素都一样D.数据元素所包含的数据项的个数要相等2.数据结构是一门研究非数值计算的程序设计问题中计算机的( (1) )以及它们之间的( (2) )和运算的学科。
(1) A.操作对象B.计算方法C.物理存储D.数据映像(2) A.结构B.关系C.运算D.算法3.数据结构被形式地定义为(D,R),其中D是( (1) )的有限集合,R是D上( (2) )的有限集合。
(1) A.算法B.数据元素C.数据操作D.逻辑结构(2)A.操作B.映像C.存储D.关系4.在数据结构中,从逻辑上可以把数据结构分为( )。
A.动态结构和静态结构B.紧凑结构和非紧凑结构C.线性结构和非线性结构D.内部结构和外部结构5.线性表的顺序存储结构是一种( )的存储结构。
A.随机存取B.顺序存取C.索引存取D.Hash存取6.算法分析的目的是( )。
A.找出数据结构的合理性B.研究算法中的输入和输出的关系C.分析算法的效率以求改进D.分析算法的易懂性和文档性7.计算机算法指的是( (1) ),它必须具备输入、输出和( (2) )等五个特征。
(1) A.计算方法B.排序方法C.解决某一问题的有限运算序列D.调度方法(2) A.可行性、可移植性和可扩充性B.可行性、确定性和有穷性C.确定性,有穷性和稳定性D.易读性、稳定性和安全性8.线性表若采用链表存储结构,要求内存中可用存储单元的地址( )。
A.必须是连续的B.部分必须是连续的C.一定是不连续的D.连续不连续都可以9.在以下的叙述中,正确的是( )。
A.线性表的线性存储结构优于链式存储结构B.二维数组是它的每个数据元素为一个线性表的线性表C.栈的操作方式是先进先出D.队列的操作方式是先进后出10.根据数据元素之间关系的不同特性,以下四类基本的逻辑结构反映了四类基本的数据组织形式,其中解释错误的是( )。
计算机软件技术基础(第三版)课后习题答案较全第一章信息与计算机1.1 什么是信息?信息与数据的区别和联系在何处?信息定义之一:信息是现实世界中存在的客观实体、现象、关系进行描述的数据。
信息定义之二:信息是经过加工后并对实体的行为产生影响的数据。
与数据的区别和联系:数据定义:数据是现实世界客观存在的实体或事物的属性值,即指人们听到的事实和看到的景象。
我们把这些数据收集起来,经过处理后,即得到人们需要的信息。
信息和数据的关系可以归结为:1. 信息是有一定含义的数据。
2. 信息是经过加工(处理)后的数据。
3. 信息是对决策有价值的数据。
1.2 信息有哪些基本属性?信息的基本属性有: 1. 事实性。
2. 等级性。
3. 可压缩性。
4. 可扩散性。
5. 可传输性。
6. 共享性。
7. 增值性和再生性。
8. 转换性。
1.3 计算机的主要特点是什么?计算机最主要的特点是: 1. 高速自动的操作功能。
2. 具有记忆的能力。
3. 可以进行各种逻辑判断。
4. 精确高速的计算能力。
1.5 完整的计算机系统应该包括哪几部分?目前最完整的计算机系统学说认为由五部分组成: 1. 人员 2. 数据3. 设备 4. 程序 5. 规程1.6 什么是计算机硬件?什么是计算机软件?硬件:泛指实际存在的物理设备,包括计算机本身及其外围设备。
微型计算机的硬件系统:主机、外存储器、输入设备、输出设备、微机的系统总线。
软件:是指计算机程序、方法、规则的文档以及在计算机上运行它时所必须的数据。
计算机软件一般分为系统软件和应用软件。
1.8 软件技术发展的几个阶段各有什么特点?它与硬件的关系如何?第一阶段:高级语言阶段特点:这一时期,编译技术代表了整个软件技术,软件工作者追求的主要目的是设计和实现在控制结构和数据结构方面表现能力强的高级语言。
但在这一时期内,编译系统主要是靠手工编制,自动化程度很低。
硬件关系:此时期计算机的硬件要求仅能用机器指令来编制可运行的程序。
华中师范大学网络教育学院《计算机软件技术基础》练习测试题库及答案一、填空题1.本课程以( )和( )为基本内容。
2.调试运行一个程序的过程是()、( )、()、()。
3.C语言的数据结构是以( )的形式出现的。
4.C语言的数据类型有()、()、()和()。
5.C程序中处理的数据,是以()和()的形式出现。
6.程序运行过程中其值不能被改变的量是( )。
7.程序运行过程中其值能被改变的量是( )。
8.数据在内存是以( )的形式存放的。
9.有符号的整型数据在内存中是以()码存放的。
10.实型数据的存储分为( )和( )两个部分。
11.一个字符数据在内存的存储形式是一个()。
12.C语言中有没有字符串类型的变量?( )。
13.如果一个字符串常量的长度是8,在内存中该字符串常量占( )个字节。
14.字符数据和整型数据进行混合运算时,字符数据以()码参加运算。
15.变量的初始化是在( )阶段进行的。
16.增量运算符的结合性是( )。
17.增量运算符的两个字符之间能否插入空格?( )18.字符输入输出函数是以( )为单位完成输入输出的。
19.当putchar()函数的自变量是整型变量时,向终端输出的是( ),当通过getchar()函数从终端得到一个字符后,若将该字符赋给了一个整型变量,这个变量的值是( )。
20.switch语句后的一对圆括号中的"表达式",允许是( )类型。
21.一维数组下标是从()开始编号的。
22.C的编译系统对二维数组的存储单元是按()顺序存放的。
23.C语言中使用函数应遵循( )的原则。
24.静态变量只有在( )才释放变量所占的内存单元。
25.动态变量是在( )时,释放变量所占用的内存,释放后的内存可供其他变量使用。
26.对一个变量的完整定义,需要指出( )和()这两种属性。
27.auto型变量存储在()区中,static型变量存储在()区,extern型变量存放在()区。
《计算机软件技术基础(1)》在线作业一
试卷总分:100 得分:100
一、单选题 (共 20 道试题,共 100 分)
1.在代码中引用一个控件时,应使用控件的( )属性。
A.Caption
C.Text
D.Index
答案:B
2.要求改文本框中显示的文本,应当在属性窗口中改变的属性是()。
A.Caption
C.Text
bel
答案:C
3.下列可以作为变量名的是()。
A.Chinese$
B.X(X+Y)
C.123BOOK
D.BOOK-1
答案:A
4.下列符号常量的声明中,不合法的是()。
A.Const A As Single = 1.5
B.Const A As Double = Sin(1)
C.Const A ="OK"
D.Const A As Integer = 1.5
答案:D
5.如果将一个命令按钮仅显示为图片,有关属性设置应该是()。
A.命令按钮的FlatStyle属性不能设置为System
B.为它的Image属性设置一个图片文件
C.设置按钮的Text属性为空
D.以上都是
答案:D
6.要存放一个人的年龄数据,使用下面的()数据类型占用的字节数最少。
A.Short
B.Byte
C.Integer
D.Long
答案:A。
《计算机软件技术基础》试题
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)
2C. O(n) D. O(n)
4.设A是一个线性表(a1,a2,?,an),采用顺序存储结构,则在等概率的前提下,平均每插入一个元素需要移动的元素个数为 B ,平均每删除一个元素需要移动的元素个数为A ;若元素插在ai与ai+1之间(0≤I≤n-1)的概率为
元素所要移动的元素个数为 C ; 2(n?i),则平均每插入一个n(n?1)
n?1 2
2n?1C. 3A. n 23n?1D. 4B.
5.下列函数中,按它们在n??时的无穷大阶数,最大的是 D 。
A. logn
B. nlogn
n/2C. 2 D. n!
6.
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. n
B. 2n-1
C. n-1
D. 2n
8.下面的程序段是合并两个无头结点链表(ha和 hb)为一个无头结点链表ha的过程,作为参数的两个链表都是按结点的data域由大到小链接的。
合并后新链表的结点仍按此方式链接。
请填写下述空框,使程序能正确运行。