计算机软件技术基础作业
- 格式:docx
- 大小:22.28 KB
- 文档页数:5
计算机软件技术基础复习题和思考题答案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.将文本框控件的()属性设置为True时,可正常显示文本,也可以选择文字,但不可编辑。
A.LockedB.WordWrapC.ModifiedD.ReadOnly【参考答案】:D2.不论何种控件,共同具有的是()属性。
A.TextC.ForeColorD.caption【参考答案】:B3.下面的()是合法的单精度型变景。
A.num!B.sum%C.xinte$D.mm#【参考答案】:A4.日期型数据常景的格式是()。
A.#mm/dd/yyyy#B.mm-dd-yyyyC.mm&dd&yyyyD.mm/dd/yyyy【参考答案】:A5.在下列属性和事件中,滚动条和滑块共有的是()。
A.ScrollB.ValueChangedrgeChangeD.Maximum【参考答案】:D6.如果窗体上的标签控件是激活的,现在要对窗体进行属性设置,则(), 然后在属窗口中进行设置。
A.单击标签控件B.双击标签控件C.在窗体上的空白处单击D.在窗体上的空白处双击/.Microsoft Visual Studio 是一个Windows应用系统,在这个软件运行时()。
A.可以设计应用程序界面B.可以编写程序代码C.可以运行和调试程序 D.以上都是【参考答案】:D8.语句x = x + 1 的正确含义是()。
A.变量x的值等于表达式x 1的值B.将变量x的值存放到变量x 1 中C.将变量x的值加1后赋予变量xD.将变量"x 1"的值存放到变量x中【参考答案】:C9.在面向对象的程序设计中,可被对象识别的动作称为()。
A.方法B.事件C.过程D.函数【参考答案】:B10.假定文本框插入点位置已确定,现希望在已有的文本中使用代码插入一段文字,应使用()属性。
A.TextC.CaptionD.SelectedText【参考答案】:A11.若要窗体中的一个控件在运行不可见,需要对该控件的()属性进行设置。
第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.根据数据元素之间关系的不同特性,以下四类基本的逻辑结构反映了四类基本的数据组织形式,其中解释错误的是( )。
一、单项选择题(1)一个算法应该是()。
A) 程序B) 问题求解步骤的描述C) 要满足五个基本属性D) A和C(2)算法指的是()。
A) 计算机程序B) 解决问题的计算方法C) 排序算法D) 解决问题的有限运算序列。
(3)与数据元素本身的形式、内容、相对位置、个数无关的是数据的()。
A) 存储结构B) 逻辑结构C) 算法D)操作(4)从逻辑上可以把数据结构分为()两大类。
A) 动态结构、静态结构B) 顺序结构、链式结构C) 线性结构、非线性结构D) 初等结构、构造型结构(5)下列叙述中正确的是( )。
A)一个逻辑数据结构只能有一种存储结构B)数据的逻辑结构属于线性结构,存储结构属于非线性结构C)一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率D)一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率(6)数据的基本单位是()A) 数据项B) 数据类型C) 数据元素D) 数据变量(7)下列程序的时间复杂度为()i=0;s=0;while(s<n){ i++;s=s+i;}A) O(n)B) O(n2)C) O(n)D) O(n2)(8)下列程序段的渐进时间复杂度为()。
for( int i=1;i<=n;i++)for( int j=1;j<= m; j++)A[i][j] = i*j ;A)O(m2) B)O(n2) C)O(m*n) D)(m+n) (9)程序段如下:sum=0;for(i=1;i<=n;i++)for(j=1;j<=n;j++)sum++;其中n为正整数,则最后一行的语句频度在最坏情况下是()。
A)O(n)B) O(nlogn) C) O(n3) D) O(n2) (10)在下面的程序段中,对x的赋值语句的频度为()。
for ( i=1; i>=n ; i++)for ( j=1; j>=n ; j++)x:=x+1;A) O(2n) B)O(n) C) O(n2) D) O(log2n)(11)程序段for ( i:=n-1; i<=1; i--)for ( j:=1; j>=i ; j++)if (a[j]>a[j+1] ){ t=a[j]; a[j]= a[j+1]; a[j+1]= t; }其中n为正整数,则最后一行的语句频度在最坏情况下是()。
判断题╳1、硬盘是断电不会消失适合长期储存信息的,计算机必须具有硬盘才能工作。
√2、把内存中的数据传送到计算机的硬盘,称为读盘。
╳3、算法一般都可以用“顺序、循环、嵌套”的控制结构组合而成。
.√4、32位计算机是指该计算机能同时处理的二进制信息的位数是32位。
√5、用于存储显示屏上像素颜色信息的是显示存储器。
╳6、程序设计语言可划分为机器语言、汇编语言和高级语言三类,其中高级语言的运行速度最快。
√7、针式打印机的耗材是色带;喷墨打印机的耗材是墨水;激光打印机的耗材是碳粉。
╳8、I/O 接口从数据传输方式来看分为串行接口和并行接口,其中硬盘SATA接口是一种并行接口。
╳9、CPU运行时的系统时钟及各种与其同步的时钟均是由CPU内部控制器提供的。
√10、无线键盘和无线鼠标采用的是无线接口,通过无线电波将信息传送给计算机,需要专用的接收器。
╳11、数据传送率是衡量硬盘性能的一项指标。
硬盘内部传输速率大于外部传输速率。
√12、Windows操作系统采用并发多任务方式支持系统中的多个任务的执行,但任何时刻只有一个任务正被CPU执行。
╳13、CPU中包含若干寄存器,可以用来临时存放数据;所有PC机的CPU都具有相同的机器指令。
√14、在数据通信和网络中,二进位信息是一位一位串行传输的,因此传输速率的度量单位是bps。
√15、计算机的性能主要取决于CPU的运算速度、内存的容量和显示器的分辨率。
╳16、激光打印机是一种非击打式输出,它使用低电压不产生臭氧,在彩色图像输出设备中已占绝对优势。
√17、硬盘存储器的平均存储时间由硬盘的旋转速度、磁头的寻道时间和数据的传输速率所决定。
√18、高级语言种类繁多,但其基本成分可归纳为数据成分、运算成分、控制成分和传输成分等4种,算术表达式属于运算成分。
╳19、自由软件允许用户随意拷贝、修改其源代码,但不允许销售。
√20、RAM按工作原理的不同可分为DRAM和SRAM,DRAM的工作速度比SRAM的速度慢。
《计算机软件技术基础(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的值是()。
H a r b i n I n s t i t u t e o f T e c h n o l o g y设计说明书(论文)课程名称:计算机软件技术基础设计题目:课后作业题院系:自动化班级:设计者:学号:一.计算机软件技术基础作业:第二章程序设计语言2.11 简述程序分裂出过程(子程序)、过程/函数的型构和体的显示分离以及接口类和类分离对软件技术发展的影响。
答:程序分裂出过程:将编译好的一段程序从主程序中分离出来简称过程,分离出来的过程叫子例程,不带返回值的过程叫子程序。
使用过程可以降低程序的复杂性、使程序结构变得清晰明了,使用函数的另一个好处就是题号编程效率。
过程/函数的型构和体可以减少代码编译时间,简化程序,避免重复的代码重复编译,还可以降低程序的复杂性,是程序结构变得清晰明了,还能提高编程效率。
接口类是没有属性变量和方法体的类,和方法体的显示分离便于写程序,同一接口类可以由不同的类实现,而应用程序关心的是接口提供的行为,不是实现的细节,接口类还有利于解决多继承带来的混乱。
总之,他们为软件技术的快速发展提供了基础。
2.12 为什么说Java的即时编译是当前编译技术最新发展?答:为了提高解释效率,发展了即时编译技术(Just-in-time)。
即对于多次重复或耗时较长的段落进行编译后,作为模块暂存,下次遇到时则直接执行目标码。
即时编译技术目前还在向着智能化方向发展。
第三章算法与数据结构例3-3 实现荷兰国旗问题,要求实现教材上三种算法1、三次循环法(扫描三次数组A,分别将将RWB移动至B数组中)int j=0; //全局变量,记录B数组移动情况for(int i=0;i<=n-1;i++){if(A[i]='R') {B[j]=A[i];j++;}}for(int i=0;i<=n-1;i++){if(A[i]='W') {B[j]=A[i];j++;}}for(int i=0;i<=n-1;i++){if(A[i]='B') {B[j]=A[i];j++;}}2、二次循环法(R不移动至前面不向后走)int j=0; //记录R的后一位C[i]={'R','W'};for(int k=0;k<=1;k++){i=j;for(int i=0;i<=n-1; ){if(A[i]=C[i]){swap(A[i],A[j]);j++;}i++;}}3、数组尾指针法(在尾部加一指针,找到非B与前面找到的B替换)k=n-1; //指向数组尾部int j=0 //指向R的后一位while(i<=k){switch(A[i])case:'R'swap(A[i],A[j]);i++;j++;break;case:'W'i++;break;case:'B'swap(A[i],A[k]);k--;break;default:error();exit(1);}3.1 算法、程序、数据结构之间的关系答:程序之所以能够解题,是因为它能把输入的数据,经过表达式计算、赋值、置换转移等一系列计算步骤,最后得到输出结果。
《计算机软件技术基础》试题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中。
在面向对象的程序设计中,可被对象识别的动作称为( )。
B A.方法 B.事件 C.过程 D.函数如果窗体上的标签控件是激活的,现在要对窗体进行属性设置,则(),然后在属窗口中进行设置。
A A.单击标签控件 B.双击标签控件 C.在窗体上的空白处单击 D.在窗体上的空白处双击要存放一个人的年龄数据,使用下面的()数据类型占用的字节数最少。
A A.Short B.Byte C.Integer D.Long日期型数据常量的格式是()。
A A.#mm/dd/yyyy# B. mm-dd-yyyy C. mm&dd&yyyy D. mm/dd/yyyy在设计阶段,双击窗体Form1的空白处,打开代码窗口,显示下面哪个事件过程()。
C A.Form1_Click B.Form1_Enter C.Form1_Load D.Form1_MouseEnter在IDE环境中,进行窗体和控件的属性设置,可以在()中进行操作。
B A.解决方案资源管理器 B.属性窗口 C.工具箱 D.IDE菜单一个简单的VB窗体应用程序被设计后,肯定有()文件。
A A.窗体文件和项目文件 B.模块文件和文本文件 C.窗体文件和模块文件 D.窗体文件和文本文件一个简单的VB控制台应用程序被设计后,肯定有()文件。
D A.窗体文件和项目文件 B.模块文件和文本文件 C.窗体文件和模块文件 D.模块文件和项目文件假定已在窗体上画了多个控件,其中有一个被选中,为了在属性窗口中设置窗体的属性,预先应执行的操作是( )。
A A.单击窗体上没有控件的地方 B.单击任意一个控件 C.双击任意一个控件 D.单击属性窗口的标题栏下列哪个数据是常量()A A.517.3 B.Step C.X D.Xname下面的()是合法的变量名。
A A.X_yz B.123abc C.Integer D.X-Y下面的()是合法的单精度型变量。
A A.num! B.sum% C.xinte$ D.mm#下列选项中,()不是基本数据类型。
数据结构习题答案第一节概论一、选择题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.本课程以( )和( )为基本内容。
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.在数据结构中,从逻辑上可以把数据结构分为( C )。
A.动态结构和静态结构B.紧凑结构和非紧凑结构C.线性结构和非线性结构D.内部结构和外部结构2.线性表的顺序存储结构是一种( A )的存储结构。
A.随机存取B.顺序存取C.索引存取D.Hash存取3.计算机算法指的是( C ),它必须具备输入、输出和( B )等五个特征。
(1) A.计算方法B.排序方法C.解决某一问题的有限运算序列D.调度方法(2) A.可行性、可移植性和可扩充性B.可行性、确定性和有穷性C.确定性,有穷性和稳定性D.易读性、稳定性和安全性4.线性表若采用链表存储结构,要求内存中可用存储单元的地址( D )。
A.必须是连续的B.部分必须是连续的C.一定是不连续的D.连续不连续都可以5.根据数据元素之间关系的不同特性,以下四类基本的逻辑结构反映了四类基本的数据组织形式,其中解释错误的是( A )。
A.集合中任何两个结点之间都有逻辑关系但组织形式松散B.线性结构中结点按逻辑关系依次排列形成一条“锁链”C.树形结构具有分支、层次特性,其形态有点像自然界中的树D.图状结构中的各个结点按逻辑关系互相缠绕,任何两个结点都可以邻接二、判断题×1.数据元素是数据的最小单位。
√2.数据结构是带有结构的数据元素的集合。
√3.数据结构、数据元素、数据项在计算机中的映像分别称为存储结构、结点、数据域。
×4.数据项是数据的基本单位。
√5.数据的逻辑结构是指各数据元素之间的逻辑关系,是用户按使用需要建立的。
√6.数据的物理结构是数据在计算机中实际的存储形式。
×7.算法和程序没有区别,所以在数据结构中二者是通用的。
三、填空题1.所谓数据的逻辑结构指的是数据元素之间的____逻辑关系_____。
2,数据结构是相互之间存在一种或多种特定关系的数据元素的集合,它包括三方面的内容______数据的逻辑结构、数据的存储结构、对数据施加的操作_。
3.数据的逻辑结构包括__集合结构___、_____线性结构___、____树型结构_____和__图状结构_____四种类型。
4.在线性结构中,开始结点_____没有______前驱结点,其余每个结点有且只有_____一个______个前驱结点。
5.算法的五个重要特性是__可行性___、___确定性___、___有穷性___、___输入__、___输出__。
6.下列程序段的时间复杂度是_____O(n)____。
for (i=1;i<=n;i++) A[i,i]=0;7.存储结构是逻辑结构的_____物理______实现。
8.从数据结构的观点看,通常所说的“数据”应分成三个不同的层次,即__数据__、__数据元素_和__数据项___。
9.一个算法的时空性能是指该算法的__时间复杂度___和___空间复杂度_,前者是算法包含的____计算量______,后者是算法需要的___存储量_______。
四、应用题1.分析下列程序段的时间复杂度。
……i=1;WHILE (i<=n) i=i*2;……答:2.简述下列术语:数据,数据元素,数据结构,数据对象。
答:3.逻辑结构与存储结构是什么关系?答:第三章线性表一、选择题1.线性结构中的一个结点代表一个( )。
A.数据元素B.数据项C.数据D.数据结构2.线性表L=(a1,a2,…,ai,…,an),下列说法正确的是( )。
A.每个元素都有一个直接前驱和直接后继B.线性表中至少要有一个元素C.表中诸元素的排列顺序必须是由小到大或由大到小的D.除第一个元素和最后一个元素外其余每个元素都有一个且仅有一个直接前驱和直接后继3.顺序表是线性表的( )。
A.链式存储结构B.顺序存储结构C.索引存储结构D.散列存储结构4.对于顺序表,以下说法错误的是( )。
A.顺序表是用一维数组实现的线性表,数组的下标可以看成是元素的绝对地址B.顺序表的所有存储结点按相应数据元素间的逻辑关系决定的次序依次排列C.顺序表的特点是:逻辑结构中相邻的结点在存储结构中仍相邻D.顺序表的特点是:逻辑上相邻的元素,存储在物理位置也相邻的单元中5.对顺序表上的插入、删除算法的时间复杂度分析来说,通常以( )为标准操作。
A.条件判断B.结点移动C.算术表达式D.赋值语句6.对于顺序表的优缺点,以下说法错误的是( )。
A.无需为表示结点间的逻辑关系而增加额外的存储空间B.可以方便地随机存取表中的任一结点C.插入和删除操作较方便D.由于顺序表要求占用连续的空间,存储分配只能预先进行(静态分配)7.在含有n个结点的顺序存储的线性表中,在任一结点前插入一个结点所需移动结点的平均次数为( )。
A.n B.n/2 C.(n-1)/2 D.(n+1)/28.在含有n个结点的顺序存储的线性表中,删除一个结点所需移动结点的平均次数为( )。
A.n B.n/2 C.(n-1)/2 D.(n+1)/29.不带头结点的单链表head为空的条件是( )。
A.head=NULL B.head->next=NULL C.head->next=head D.head!=NULL 10.带头结点的单链表head为空的条件是( )。
A.head=NULL B.head->next=NULL C.head->next=head D.head!=NULL 11. 在一个单链表中,已知*q结点是*p结点的前驱结点,若在*q和*p之间插入结点*s,则执行( )。
A.s->next=p->next;p->next=s;B.p->next=s->next;s->next=p;C.q->next=s; s->next=p;D.p->next=s; s->next=q;12. 在一个单链表中,若*p结点不是最后结点。
在*p之后插入结点*s,则执行( )。
A.s->next=p;p->next=s; B.s->next=p->next;p->next=s;C.s->next=p->next;p=s;D.p->next=s;s->next=p;13. 若某线性表中最常用的操作是取第i个元素和找第i个元素的前驱元素,则采用( )存储方式最节省时间。
A.顺序表 B. 单链表C.双链表D.单循环链表14.在一个单链表中,若删除*p结点的后继结点,则执行( )。
A.q=p->next;p->next=q->next;free(q);B.p=p->next;p->next=p->next->next;free(p);C.p->next=p->next;free(p->next);D.p=p->next->next;free(p->next);15.循环链表的主要优点是( )。
A.不再需要头指针了B.已知某个结点的位置后,容易找到它的直接前驱C.在进行插入、删除操作时,能更好地保证链表不断开D.从表中任一结点出发都能扫描到整个链表16.在线性表的下列存储结构中,读取元素花费时间最少的是( )。
A.单链表B.双链表C.循环链表D.顺序表二、判断题( )1.顺序存储的线性表可以随机存取。
( )2.顺序存储的线性表的插入和删除操作不需要付出很大的代价,因为平均每次操作只有近一半的元素需要移动。
( )3.线性表中的元素可以是各种各样的,但同一线性表中的数据元素具有相同的特性,因此是属于同一数据对象。
( )4.在线性表的顺序存储结构中,逻辑上相邻的两个元素在物理位置上不一定相邻。
( )5.在线性表的链式存储结构中,逻辑上相邻的元素在物理位置上不一定相邻。
( )6.在单链表中,可以从头结点开始查找任何一个元素。
( )7.线性表的链式存储结构优于顺序存储结构。
( )8.在线性表的顺序存储结构中,插入和删除元素时,移动元素的个数与该元素的位置有关。
( )9.在单链表中,要取得某个元素,只要知道该元素的指针即可,因此,单链表是随机存取的存储结构。
( )10.顺序存储方式只能用于存储线性结构。
三、填空题1.为了便于讨论,有时将含n(n>0)个结点的线性结构表示成(a1,a2,…,an),其中每个ai代表一个___________。
a1称为___________结点,an称为___________结点,i称为ai在线性表中的___________。
对任意一对相邻结点a i、a i+1(1≤i<n),ai称为ai+1的直接___________,ai+1称为ai的直接____________。
2.线性结构的基本特征是:若至少含有一个结点,则除起始结点没有直接___________外,其他结点有且仅有一个直接___________;除终端结点没有直接___________外,其他结点有且仅有一个直接____________。
3.所有结点按一对一的邻接关系构成的整体就是___________结构。
4.线性表的逻辑结构是___________结构,其所含结点的个数称为线性表的___________。
5.在单链表中,删除p所指结点的直接后继的操作是___________;___________;___________.6.对于一个具有n个结点的单链表,在p所指结点后插入一个结点的时间复杂度为___________,在给定值为x的结点后插入新结点的时间复杂度为___________。
7.单链表表示法的基本思想是用___________表示结点间的逻辑关系。
8.在顺序表中插入或删除一个元素,平均需要移动___________元素,具体移动的元素个数与___________有关。
9.在单链表中,若p和s是两个指针,且满足p->next与s相同,则语句p->next=s->next的作用是___________s指向的结点。
10.在单链表中,指针p所指结点为最后一个结点的条件是___________。
11.思考题:在单链表中,若要在p所指结点之前插入s所指的结点,可进行下列操作:s->next=___________;p->next=s;temp=p->data;p->data=___________;s->data=____________;四、应用题1.描述以下三个概念的区别:头指针,头结点,首元结点(第一个元素结点)。
答:2.何时选用顺序表,何时选用链表作为线性表的存储结构为宜?答:3.在顺序表中插入和删除一个结点需平均移动多少个结点?具体的移动次数取决于哪两个因素?答:4.如果有n个线性表同时共存,并且在处理过程中各表的长度会发生动态变化,线性表的总长度也会自动地改变。