全国计算机等级考试二级公共基础知识及题目汇总最全
计算机二级公共基础知识汇总(附习题答案)(超详细)
计算机二级公共基础知识汇总(附习题答案)(超详细)1.了解算法的基本概念和一些常用的算法,学会计算算法的时间复杂度;2.掌握数据结构的基本概念,并了解数据的逻辑结构和存储结构,学会利用图形的方式表示数据结构;3.了解线性表的基本概念,并掌握线性表的顺序存储结构以及顺序存储的线性表的基本运算;4.了解栈和队列的基本概念,并掌握它们的基本运算;5.了解线性链表的基本概念,并掌握线性链表的基本运算,同时,了解循环链表的基本概念和基本操作6.理解树的概念,尤其是二叉树的基本概念和相关性质,掌握二叉树的存储结构和遍历技术;7.掌握查找技术,学会利用顺序查找和二分查找在数列中查找指定的数据;8.学会利用相关的排序技术实现无序数列的排序操作。
1.了解程序设计的方法,以及程序设计风格确立的一些因素,掌握程序设计的基本规则;2.了解结构化程序设计的基本原则,掌握结构化程序设计的基本结构与特点;3.了解面向对象的程序设计方法,并理解面向对象方法的一些基本概念。
3.了解软件工程的基本概念;4.了解软件工程过程与软件的生命周期,以及软件工程的目标和原则;5.了解利用结构化分析法进行软件工程中的需求分析的方法,并了解需求分析的方法和需要完成的任务;6.了解数据流图的使用方法;7.了解如何利用结构化设计方法进行软件设计,并了解软件设计的一些常用用工具;8.了解软件测试的目的和方法,以及软件测试的准则,了解常用的软件测试方法的区别和各自的功能与特点;9.了解程序调试的方法和原则。
1.了解数据库系统的基本概念,以及数据库系统的发展;2.了解数据模型的基本概念,并对E-R模型、层次模型、网状模型和关系模型进行了解,并掌握关系模型的数据结构、关系的操作和数据约束等知识;3.了解关系模型的基本操作,掌握关系模型的基本运算及扩充运算;4.了解数据库的设计与管理,掌握数据库设计的几个阶段的方法和特点。
软件工程原则包括抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。
全国计算机二级公共基础知识汇总
全国计算机二级公共基础知识汇总计算机二级公共基础知识是计算机专业人员必备的基本知识,包括计算机基本原理、操作系统、网络原理、数据库原理和计算机应用等方面的知识。
下面是全国计算机二级公共基础知识的完整汇总。
一、计算机基本原理:计算机硬件的组成和工作原理,包括中央处理器、存储器、输入输出设备等。
1.中央处理器:控制计算机的运算和控制活动,包括运算单元和控制单元。
2.存储器:计算机的主要组成部分,包括内存和外存。
3.输入输出设备:与计算机进行交互的设备,包括键盘、鼠标、显示器、打印机等。
二、操作系统:计算机的核心软件,负责管理和控制计算机的资源。
1.操作系统的功能:包括进程管理、内存管理、文件管理、设备管理和用户界面等。
2. 常见的操作系统:Windows、Linux、Unix等。
三、网络原理:计算机网络的基本原理和常用协议,包括网络拓扑、网络协议和安全性等。
1.网络拓扑:指网络中计算机的物理连接方式,包括星型、总线型、环型等。
2.网络协议:指计算机网络中不同计算机之间通信的规则和约定,常见的协议有TCP/IP、HTTP、FTP等。
3.网络安全性:指保护计算机网络不受到非法侵入和攻击的能力,包括防火墙、加密技术等。
四、数据库原理:数据库的基本原理和常用操作,包括数据模型、关系数据库和SQL语言等。
1.数据模型:指描述数据结构、数据操作和数据约束的概念工具,常见的数据模型有层次模型、网状模型和关系模型等。
2. 关系数据库:采用关系模型进行数据组织和管理的数据库,常见的关系数据库有Oracle、MySQL、SQL Server等。
3.SQL语言:结构化查询语言,用于对关系数据库进行查询、更新和管理。
五、计算机应用:计算机在不同领域应用的基本知识,包括办公软件、图像处理、网页设计等。
1.办公软件:包括文字处理、电子表格和演示文稿等。
3. 网页设计:指网页的布局、设计和开发,需要掌握HTML、CSS和JavaScript等技术。
全国计算机二级考试(公共基础)试题及答案汇总
全国计算机等级考试——公共基础知识部分模拟试卷1.下列选项中不符合良好程序设计风格的是______。
A.源程序要文档化B.数据说明的次序要规范化C.避免滥用goto语句D.模块设计要保证高耦合、高内聚2.从工程管理角度,软件设计一般分为两步完成,它们是______。
A.概要设计与详细设计B.过程控制C.软件结构设计与数据设计D.程序设计与数据设计3.下列选项中不属于软件生命周期开发阶段任务的是______。
A.软件测试B.概要设计C.软件维护D.详细设计4.在数据库系统中,用户所见数据模式为______。
A.概念模式B.外模式C.内模式D.物理模式5.数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和______。
A.编码设计B.测试阶段C.运行阶段D.物理设计6.设有如下三个关系表R S T下列操作中正确的是______。
A.T=R∩SB.R∪SC.D.T=R∕S7.下列叙述中正确的是______。
A.一个算法的空间复杂度大,则其时间复杂度也必定大B.一个算法的空间复杂度大,则其时间复杂度必定小C.一个算法的时间复杂度大,则其空间复杂度必定小D.上述三种说法都不对8.在长度为64的有序线性表中进行顺序查找,最坏情况下需要比较的次数为______。
A.63B.64C.6D.79.数据库技术的根本目标是解决数据的______。
A.存储问题B.共享问题C.安全问题D.保护问题10.对下列二叉树进行中序遍历的结果是______。
A.ACBDFEGB.ACBDFGEC.ABDCGEFD.FCADBEG11.下列叙述中正确的是______。
A.算法的效率只与问题的规模有关,而与数据的存储结构无关B.算法的时间复杂度是指执行算法所需要的计算工作量C.数据的逻辑结构与存储结构是一一对应的D.算法的时间复杂度与空间复杂度一定相关12.在结构化程序设计中,模块划分的原则是______。
A.各模块应包括尽量多的功能B.各模块的规模应尽量大C.各模块之间的联系应尽量紧密D.模块内具有高内聚度、模块间具有低耦合度13.下列叙述中正确的是______。
计算机二级公共基础知识题及答案
计算机⼆级考试是全国计算机等级考试(National Computer Rank Examination,简称NCRE)四个等级中的⼀个等级,考核计算机基础知识和使⽤⼀种⾼级计算机语⾔编写程序以及上机调试的基本技能。
那么计算机⼆级公共基础知识会怎么考?以下仅供参考! 1.如果在⼀个⾮零⽆符号⼆进制整数之后添加⼀个0,则此数的值为原数的()。
答案:B A)4倍 B)2倍 C)1/2 D)1/4 2.已知"装"字的拼⾳输⼊码是"zhuang",⽽"⼤"字的拼⾳输⼊码是"da",则存储它们内码分别需要的字节个数是()。
答案:C A)6,2 B)3,1 C)2,2 D)3,2 3.微机中,西⽂字符所采⽤的编码是()。
答案:B A)EBCDIC码 B)ASCII码 C)国标码 D)BCD码 4.根据汉字国标码GB2312-80的规定,将汉字分为常⽤汉字(⼀级)和⾮常⽤汉字(⼆级)两级汉字。
⼀级常⽤汉字的排列是按()。
答案:B A)偏旁部⾸ B)汉语拼⾳字母 C)笔划多少 D)使⽤频率多少 5.存储⼀个48×48点阵的汉字字形码需要的字节个数是()。
答案:B A)384 B)288 C)256 D)144 6.⽆符号⼆进制整数10000001转换成⼗进制数是()。
答案:D A)119 B)121 C)127 D)129 7.根据汉字国标码GB2312-80的规定,⼀级常⽤汉字数是()。
答案:C A)3477个 B)3575个 C)3755个 D)7445个 8.在标准ASCII码表中,已知英⽂字母D的ASCII码是01000100,英⽂字母B的ASCII码是()。
答案:B A)01000001 B)01000010 C)01000011 D)01000000 9.标准ASCII码字符集有128个不同的字符代码,它所使⽤的⼆进制位数是()。
计算机二级公共基础知识题汇总5套真题
第一套2008年9月一、选择题(1)一个栈的初始状态为空。
现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后依次出栈,则元素出栈的顺序是________。
A)12345ABCDEB)EDCBA54321C)ABCDE12345D)54321EDCBAB【解析】栈的特点是先进后出,所以全部入栈后再全部出栈所得的序列顺序必然与入栈序列的顺序相反。
(2)下列叙述中正确的是________。
A)循环队列有队头和队尾两个指针,因此,循环队列是非线性结构B)在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况C)在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况D)循环队列中元素的个数是由队头指针和队尾指针共同决定的D【解析】循环队列是线性表的一种,所以选项A)错误。
循环队列的入队和出队需要队尾指针和队头共同指针完成,所以选项B)和C)错误。
(3)在长度为n的有序线性表中进行二分查找,最坏情况下需要比较的次数是________。
A)O(n)B)O(n2)C)O(log2n)D)O(nlog2n)C【解析】二分查找法也称为折半查找法。
它的基本思想是:将n个元素分成个数大致相同的两半,取a[n/2]与欲查找的x作比较,如果x=a[n/2],则找到x,算法终止;如果x<a[n/2],则只要在数组a的左半部继续搜索x(这里假设数组元素呈升序排列);如果x>a[n/2],则只要在数组a的右半部继续搜索x。
每次余下n/(2i)个元素待比较,当最后剩下一个时,即n/(2i)=1。
故,n=2i; 所以i=log2n。
(4)下列叙述中正确的是________。
A)顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的B)顺序存储结构只针对线性结构,链式存储结构只针对非线性结构C)顺序存储结构能存储有序表,链式存储结构不能存储有序表D)链式存储结构比顺序存储结构节省存储空间A【解析】顺序存储方式是把逻辑上相邻的结点存储在物理上相邻的存储单元里,结点之间的关系由存储单元的邻接关系来体现。
计算机二级试题(公共基础知识部分)
一, 选择题(1) 下面叙述正确的是(C)A.算法的执行效率及数据的存储结构无.B.算法的空间困难度是指算法程序中指令(或语句)的条.C.算法的有穷性是指算法必需能在执行有限个步骤之后终.D.以上三种描述都不对(2) 以下数据结构中不属于线性数据结构的是(C)A.队.B.线性.C.二叉.D.栈(3) 在一棵二叉树上第5层的结点数最多是(B) 注: 由公式2k-1得A..B.1.C.3.D.15(4) 下面描述中, 符合结构化程序设计风格的是(A)A.运用依次. 选择和重复(循环)三种基本限制结构表示程序的限制逻.B.模块只有一个入口,可以有多个出.C.注意提高程序的执行效.D.不运用goto语句(5) 下面概念中, 不属于面对对象方法的是 (D) 注: P55-58A.对.B.继.C..D.过程调用(6) 在结构化方法中, 用数据流程图(DFD)作为描述工具的软件开发阶段是(B)-A.可行性分.B.需求分.C.具体设.D.程序编.(7) 在软件开发中, 下面任务不属于设计阶段的是(D)A.数据结构设.B.给出系统模块结构C.定义模块算.D.定义需求并建立系统模型(8) 数据库系统的核心是(B)A.数据模.B.数据库管理系.C.软件工.D.数据库(9) 下列叙述中正确的是(C)A.数据库是一个独立的系统, 不须要操作系统的支持B.数据库设计是指设计数据库管理系统C.数据库技术的根本目标是要解决数据共享的问题D.数据库系统中, 数据的物理结构必需及逻辑结构一样(10) 下列模式中, 能够给出数据库物理存储结构及物理存取方法的是(A) 注: P108A.内模.B.外模.C.概念模.D.逻辑模式(11) 算法的时间困难度是指(C)A.执行算法程序所须要的时.B.算法程序的长.C.算法执行过程中所须要的基本运算次.D.算法程序中的指令条数(12) 算法的空间困难度是指(D)A.算法程序的长.B.算法程序中的指令条.C.算法程序所占的存储空.D.算法执行过程中所须要的存储空间(13) 设一棵完全二叉树共有699个结点, 则在该二叉树中的叶子结点数为(B) 注: 利用公式n=n0+n1+n2, n0=n2+1和完全二叉数的特点可求出A.34.B.35.C.25.D.351(14) 结构化程序设计主要强调的是(B)A.程序的规模B.程序的易读性C.程序的执行效率D.程序的可移植性(15) 在软件生命周期中, 能精确地确定软件系统必需做什么和必需具备哪些功能的阶段是(D) 注: 即第一个阶段A.概要设.B.具体设.C.可行性分.D.需求分析(16) 数据流图用于抽象描述一个软件的逻辑模型, 数据流图由一些特定的图符构成。
二级计算机公共基础知识
二级计算机公共基础知识1. 计算机硬件基础
- 计算机硬件组成
- 的工作原理
- 内存的种类和作用
- 存储设备的种类和特点
- 输入输出设备的种类和功能
2. 操作系统基础
- 操作系统的概念和作用
- 操作系统的主要功能
- 常见操作系统的种类
- 文件管理和磁盘管理
- 进程和线程管理
3. 网络基础
- 计算机网络的概念和分类
- 网络拓扑结构
- 网络协议和网络模型
- 互联网的工作原理
- 网络安全和加密技术
4. 数据库基础
- 数据库的概念和作用
- 数据库管理系统的种类 - 数据库设计和规范化
- 语言基础
- 数据库安全和备份
5. 算法和数据结构
- 算法的概念和特性
- 常见算法的分析和设计 - 数据结构的种类和应用 - 算法复杂度分析
- 递归和动态规划
6. 程序设计基础
- 程序设计语言的种类
- 程序设计基本概念
- 程序设计流程控制
- 函数和模块化编程
- 面向对象程序设计
7. 信息安全基础
- 信息安全的概念和重要性 - 密码学基础
- 访问控制和身份认证
- 恶意软件和防御措施
- 网络安全和防火墙
以上内容涵盖了二级计算机公共基础知识的主要方面,可以作为学习和复习的参考。
全国计算机等级考试二级教程——公共基础知识
全国计算机等级考试二级教程——公共基础知识一、操作系统基础知识1.操作系统是什么?请简要说明其作用和功能。
操作系统是计算机系统中的一种软件,它负责管理和控制计算机硬件资源,并为用户程序提供运行环境。
其主要功能包括进程管理、内存管理、文件系统管理和设备管理等。
2.请列举几种常见的操作系统。
常见的操作系统包括Windows、Linux、Mac OS、Android等。
3.什么是进程?什么是线程?进程是正在执行的程序的实例,是操作系统资源分配与调度的基本单位。
线程是进程中的一个执行单元,一个进程可以包含多个线程。
4.什么是文件系统?文件系统是一种组织和管理计算机存储设备上数据的方法,用于存储和检索文件,并提供对文件的访问控制和保护。
二、计算机网络基础知识1.什么是IP地址?IP地址的作用是什么?IP地址是因特网协议(IP)的网络接口的标识,用于唯一地标识和定位网络上的计算机设备。
IP地址的作用是用于在数据通信中确定源和目标的地址。
2. 请简述Internet的结构。
Internet的结构是由成千上万个相互连接的计算机网络组成的,形成一个全球性的网络。
它使用一种称为互联网协议(IP)的通信协议进行数据传输,通过路由器相互连接。
3.什么是HTTP协议?HTTP协议有哪些特点?HTTP协议(Hypertext Transfer Protocol)是一种用于从服务器传输超文本到客户端的协议。
它的特点包括无连接性、无状态性和可扩展性。
三、数据库基础知识1.什么是数据库?数据库的作用是什么?数据库是存储、管理和组织数据的集合,它提供了一种结构化的方式来组织和存储数据,以便于数据的存取和处理。
数据库的作用是存储和管理大量的数据,并为用户提供数据查找、插入、更新和删除等功能。
2.请简述关系数据库的特点和优点。
关系数据库是一种以关系为基础的数据模型。
它的特点包括数据的结构化、数据间的关系建立、数据的操作和约束等。
关系数据库的优点是数据的一致性、数据的可扩展性、数据的安全性和数据的完整性。
计算机二级公共基础知识练习题及答案
计算机二级公共基础知识练习题及答案计算机二级公共基础知识练习题及答案计算机等级考试分为两大部分,一是理论基础知识,二是上机操作实践。
以下是由店铺整理关于计算机二级公共基础知识练习题及答案的内容,希望大家喜欢!计算机二级公共基础知识练习题及答案(一)1、信息安全是一门涉及计算机科学、网络技术、通信技术、( )、数论、信息论等多种学科的综合性学科。
A、密码技术B、信息安全技术C、信息管理技术D、应用数学答案:ABD2、分布式系统与计算机网络的主要区别不在它们的物理结构上,而是在( )。
A、服务器软件B、高层软件C、路由器硬件D、通信子网答案:B3、下列叙述中,正确的是( )。
A、Word文档不会带计算机病毒B、计算机病毒具有自我复制的能力,能迅速扩散到其他程序上C、清除计算机病毒的最简单办法是删除所有感染了病毒的文件D、计算机杀病毒软件可以查出和清除任何己知或未知的病毒答案:B4、下列各类计算机程序语言中,不属于高级程序设计语言的是( )。
A、Visual BasicB、Fortran语言C、Pascal语言D、汇编语言答案:D5、数据结构作为计算机的一门学科,主要研究数据的逻辑结构、对各种数据结构进行的运算,以及( )。
A、数据的存储结构B、计算方法C、数据映象D、逻辑存储答案:A计算机二级公共基础知识练习题及答案(二)1、世界上台计算机是1946年美国研制成功的`,该计算机的英文缩写名为( )。
A、MARK-ⅡB、ENIACC、EDSACD、EDVAC答案:B2、计算机操作系统的作用是( )。
A、统一管理计算机系统的全部资源,合理组织计算机的工作流程,以达到充分发挥计算机资源的效率;为用户提供使用计算机的友好界面B、对用户文件进行管理,方便用户存取C、执行用户的各类命令D、管理各类输入/输出设备答案:B3、计算机中表示地址是使用的( )。
A、无符号数B、原码C、反码D、补码答案:A4、在计算机系统中,对计算机各类资源进行统一管理和调度的软件是( )。
全国计算机等级考试二级基础知识试题库
全国计算机等级考试二级基础知识130题一、选择题(1最简单的交换排序方法是A快速排序B选择排序C堆排序D冒泡排序(2栈通常采用的两种存储结构是A线性存储结构和链表存储结构B散列方式和索引方式C链表存储结构和数组D线性存储结构和非线性存储结构(3线性表的顺序存储结构和线性表的链式存储结构分别是A顺序存取的存储结构、顺序存取的存储结构B随机存取的存储结构、顺序存取的存储结构C随机存取的存储结构、随机存取的存储结构D任意存取的存储结构、任意存取的存储结构(4完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例的测试方法是A黑箱测试法B白箱测试法C错误推测法D安装测试法(5在结构化设计方法中,生成的结构图(SC中,带有箭头的连线表示A模块之间的调用关系B程序的组成成分C控制程序的执行顺序D数据的流向(6下列选项中,不属于模块间耦合的是A数据耦合B同构耦合C异构耦合D公用耦合(7一个关系中属性个数为1时,称此关系为A对应关系B单一关系C一元关系D二元关系(8为用户与数据库系统提供接口的语言是A高级语言B数据描述语言(DDLC数据操纵语言(DML D汇编语言(9相对于数据库系统,文件系统的主要缺陷有数据关联差、数据不一致性和A可重用性差B安全性差C非持久性D冗余性(10需求分析阶段的任务是确定A软件开发方法B软件开发工具C软件开发费用D软件系统功能(11下列数据结构中,按先进后出原则组织数据的是A线性链表B栈C循环链表D顺序表(12具有3个结点的二叉树有A2种形态B4种形态C7种形态D5种形态(13设有下列二叉树:(取消对此二叉树前序遍历的结果为AZBTYCPXA BATBZXCYPCZBTACYXP DA TBZXCPY(14结构化程序设计主要强调的是A程序的规模B程序的效率C程序设计语言的先进性D程序易渎性(15程序的3种基本控制结构是A过程、子过程和分程序B顺序、选择和重复C递归、堆栈和队列D调用、返回和转移(16下列叙述中,不属于测试的特征的是A测试的挑剔性B完全测试的不可能性C测试的可靠性D测试的经济性(17需求分析中开发人员要从用户那里了解A软件做什么B用户使用界面C输入的信息D软件的规模(18下列关系模型中,能使经运算后得到的新关系中属性个数多于原来关系中属性个数的是A选择B连接C投影D并(19下列叙述中,正确的是A用E-R图能够表示实体集间一对一的联系、一对多的联系和多对多的联系B用E-R图只能表示实体集之间一对一的联系C用E-R图只能表示实体集之间一对多的联系D用E-R图表示的概念数据模型只能转换为关系数据模型(20“年龄在18~25之间”这种约束是属于数据库当中的A原子性措施B一致性措施C完整性措施D安全性措施(21根据数据结构中各数据元素之间前后件关系的复杂程度,一般将数据结构分成A动态结构和静态结构B紧凑结构和非紧凑结构C线性结构和非线性结构D内部结构和外部结构(22设一棵二叉树中有3个叶子结点,有8个度为1的结点,则该二叉树中总的结点数为A12 B13 C14 D15(23在下列几种排序方法中,要求内存量最大的是A插入排序B选择排序C快速排序D归并排序(24下列叙述中,不属于结构化程序设计方法的主要原则的是A自顶向下B由底向上C模块化D限制使用goto语句(25下列不属于软件调试技术的是A强行排错法B集成测试法C回溯法D原因排除法(26为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为APAD图BN-S图C结构图D数据流图(27软件复杂性度量的参数包括A效率B规模C完整性D容错性(28下列叙述中,不属于数据库系统的是(取消A数据库B数据库管理系统C数据库管理员D数据库应用系统(29数据库系统的核心是A数据库B数据库管理系统C数据模型D软件工具(30视图设计一般有3种设计次序,下列不属于视图设计的是A自顶向下B由外向内C由内向外D自底向上(31栈和队列的共同特点是A都是先进先出B都是先进后出C只允许在端点处插入和删除元素D没有共同点(32已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是Aacbed Bdccab Cdeabc Dcedba(33链表不具有的特点是A不必事先估计存储空间B可随机访问任一元素C插入删除不需要移动元素D所需空间与线性表长度成正比(34结构化程序设计的3种结构是A顺序结构,选样结构、转移结构B分支结构、等价结构、循环结构C多分支结构、赋值结构、等价结构D顺序结构、选择结构、循环结构(35为了提高测试的效率,应该A随机选取测试数据B取一切可能的输入数据作为测试数据C在完成编剧以后制定软件的测试计划D集中对付那些错误群集的程序(36算法的时间复杂度是指A执行算法程序所需要的时间B算法程序的长度C算法执行过程中所需要的基本运算次数D算法程序中的指令条数(37软件生命周期中所花费用最多的阶段是A详细设计B软件编码C软件测试D软件维护(38数据库管理系统DBMS中用来定义模式、内模式和外模式的语言为AC BBasic CDDL DDML(39下列有关数据库的描述,正确的是A数据库是一个DBF文件B数据库是一个关系C数据库是——个结构化的数据集合D数据库是一组文件40下列有关数据库的描述,正确的是A数据处理是将信息转化为数据的过程B数据的物理独立性是指当数据的逻辑结构改变时,数据的存储结构不变C关系中的每—列称为元组,一个元组就是一个字段D如果—个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的关键字,则称其为本关系的外关键字(41已知一棵二叉树前序遍历和中序遍历分别为ABDEGCFH和DBGEACHF,则该二叉树的后序遍历为AGEDHFBCA BDGEBHFCACABCDEFGH DACBFEDHG(42树是结点的集合,它的根结点数目是A有且只有1 B1或多于1C0或1 D至少2(43如果进栈序列为e1,e2,e3,e4,则可能的出栈序列是Ae3,e1,e4,e2 Be2,e4,e3,e1Ce3,e4,e1,e2 D任意顺序(44在设计程序时,应采纳的原则之一是A不限制goto语句的使用B减少或取消注解行C程序越短越好D程序结构应有助于读者理解(45程序设计语言的基本成分是数据成分、运算成分、控制成分和A对象成分B变量成分C语句成分D传输成分(46下列叙述中,不属于软件需求规格说明书的作用的是A便于用户、开发人员进行理解和交流B反映出用户问题的结构,可以作为软件开发工作的基础和依据C作为确认测试和验收的依据D便于开发人员进行需求分析(47下列不属于软件工程的3个要素的是A工具B过程C方法D环境(48单个用户使用的数据视图的描述称为A外模式B概念模式C内模式.D存储模式(49将E-R图转换到关系模式时,实体与联系都可以表示成A属性B关系C键D域(50SQL语言又称为A结构化定义语言B结构化控制语言C结构化查询语言D结构化操纵语言(51算法的空间复杂度是指A算法程序的长度B算法程序中的指令条数C算法程序所占的存储空间D执行过程中所需要的存储空间(52用链表表示线性表的优点是A便于随机存取B花费的存储空间较顺序存储少C便于插人和删除操作D数据元素的物理顺序与逻辑顺序相同(53数据结构中,与所使用的计算机无关的是数据的A存储结构B物理结构C逻辑结构D物理和存储结构(54结构化程序设计主要强调的是A程序的规模B程序的效率C程序设计语言的先进性D程序易读性(55软件设计包括软件的结构、数据接口和过程设计,其中软件的过程设计是指A模块间的关系B系统结构部件转换成软件的过程描述C软件层次结构D软件开发过程(56检查软件产品是否符合需求定义的过程称为A确认测试B集成测试C验证测试D验收测试(57数据流图用于抽象描述一个软件的逻辑模型,数据流图有一些特定的图符构成。
全国计算机等级考试二级公共基础知识试题及答案
全国计算机等级考试二级公共根底知识试题及答案1.41 在结构化程序设计思想提出之前,在程序设计中曾强调程序的效率,现在,与程序的效率相比,人们更重视程序的A〕平安性B〕一致性C〕可理解性D〕合理性正确答案: C1.42 一些重要的程序语言〔如C语言和Pascal语言〕允许过程的递归调用。
而实现递归调用中的存储分配通常用A〕栈B〕堆C〕数组D〕链表正确答案: A1.43 以下不属于对象的根本特点的是A〕分类性B〕多态性C〕继承性D〕封装性正确答案: C1.44 以下不属于软件工程的3个要素的是A〕工具B〕过程C〕方法D〕环境正确答案: D1.45 开发大型软件时,产生困难的根本原因是A〕大系统的复杂性B〕人员知识缺乏C〕客观世界千变万化D〕时间紧、任务重正确答案: A1.46 下面不属于软件设计原那么的是A〕抽象B〕模块化C〕自底向上D〕信息隐蔽正确答案: C1.47 软件工程的理论和技术性研究的内容主要包括软件开发技术和A〕消除软件危机B〕软件工程管理C〕程序设计自动化D〕实现软件可重用正确答案: B1.48 开发软件所需高本钱和产品的低质量之间有着锋利的矛盾,这种现象称作A〕软件投机B〕软件危机C〕软件工程D〕软件产生正确答案: B1.49 软件工程的出现是由于A〕程序设计方法学的影响B〕软件产业化的需要C〕软件危机的出现D〕计算机的开展正确答案: C1.50 以下不属于结构化分析的常用工具的是A〕数据流图B〕数据字典C〕判定树D〕PAD图正确答案: A1.51 数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。
以下图符名标识的图符不属于数据流图合法图符的是A〕控制流B〕加工C〕数据存储D〕源和潭正确答案: A1.52 在数据流图〔DFD〕中,带有名字的箭头表示A〕模块之间的调用关系B〕程序的组成成分C〕控制程序的执行顺序D〕数据的流向正确答案: D1.53 在结构化设计方法中,生成的结构图〔S C〕中,带有箭头的连线表示A〕模块之间的调用关系B〕程序的组成成分C〕控制程序的执行顺序D〕数据的流向正确答案: A1.54 为了防止流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为A〕PAD图B〕N-S图C〕结构图D〕数据流图正确答案: B1.55 模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准那么是模块的A〕抽象和信息隐蔽B〕局部化和封装化C〕内聚性和耦合性D〕激活机制和控制方法正确答案: C1.56 以下选项中,不属于模块间耦合的是A〕数据耦合B〕同构耦合C〕异构耦合D〕公用耦合正确答案: C1.57 软件开发的结构化生命周期方法将软件生命周期划分成A〕定义、开发、运行维护B〕设计阶段、编程阶段、测试阶段C〕总体设计、详细设计、编程调试D〕需求分析、功能定义、系统设计正确答案: A1.58 需求分析阶段的任务是确定A〕软件开发方法B〕软件开发工具C〕软件开发费用D〕软件系统功能正确答案: D1.59 需求分析中开发人员要从用户那里了解A〕软件做什么B〕用户使用界面C〕输入的信息D〕软件的规模正确答案: A1.60 以下表达中,不属于软件需求规格说明书的作用的是A〕便于用户、开发人员进行理解和交流B〕反映出用户问题的结构,可以作为软件开发工作的根底和依据C〕作为确认测试和验收的依据D〕便于开发人员进行需求分析正确答案: D1.61 在软件生产过程中,需求信息的给出是A〕程序员B〕工程管理者C〕软件分析设计人员D〕软件用户正确答案: D1.62 软件设计包括软件的结构、数据接口和过程设计,其中软件的过程设计是指A〕模块间的关系B〕系统结构部件转换成软件的过程描述C〕软件层次结构D〕软件开发过程正确答案: B1.63 开发软件时对提高开发人员工作效率至关重要的是A〕操作系统的资源管理功能B〕先进的软件开发工具和环境C〕程序人员的数量D〕计算机的并行处理能力正确答案: B1.64 在软件测试设计中,软件测试的主要目的是A〕实验性运行软件B〕证明软件正确C〕找出软件中全部错误D〕发现软件错误而执行程序正确答案: D1.65 以下表达中,不属于测试的特征的是A〕测试的挑剔性B〕完全测试的不可能性C〕测试的可靠性D〕测试的经济性正确答案: C1.66 为了提高测试的效率,应该A〕随机选取测试数据B〕取一切可能的输入数据作为测试数据C〕在完成编码以后制定软件的测试方案D〕集中对付那些错误群集的程序正确答案: D1.67 软件开发离不开系统环境资源的支持,其中必要的测试数据属于A〕硬件资源B〕通信资源C〕支持软件D〕辅助资源正确答案: D1.68 完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例的测试方法是A〕黑箱测试法B〕白箱测试法C〕错误推测法D〕安装测试法正确答案: A1.69 在软件工程中,白箱测试法可用于测试程序的内部结构。
全国计算机二级考试公共基础知识题库365题及答案
(1)下面叙述正确的是______。
(C)A.算法的执行效率与数据的存储结构无关B.算法的空间复杂度是指算法程序中指令(或语句)的条数(指的是算法所占用的空间)C.算法的有穷性是指算法必须能在执行有限个步骤之后终止D.以上三种描述都不对(2) 以下数据结构中不属于线性数据结构的是______。
(C)A.队列B.线性表C.二叉树D.栈(3) 在一棵二叉树上第5层的结点数最多是______。
(B)2n-1A.8B.16C.32D.15(4) 下面描述中, 符合结构化程序设计风格的是______。
(A)A.使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B.模块只有一个入口, 可以有多个出口(可以有0个入口)C.注重提高程序的执行效率D.不使用goto语句(只是限制使用)(5) 下面概念中, 不属于面向对象方法的是______。
(D)A.对象B.继承C.类D.过程调用(6) 在结构化方法中, 用数据流程图(DFD)作为描述工具的软件开发阶段是______。
(B)A.可行性分析B.需求分析C.详细设计D.程序编码(7) 在软件开发中, 下面任务不属于设计阶段的是______。
(D)A.数据结构设计B.给出系统模块结构C.定义模块算法D.定义需求并建立系统模型(8) 数据库系统的核心是______。
(B)A.数据模型B.数据库管理系统C.软件工具D.数据库(9) 下列叙述中正确的是______。
(C)A.数据库是一个独立的系统, 不需要操作系统的支持B.数据库设计是指设计数据库管理系统C.数据库技术的根本目标是要解决数据共享的问题D.数据库系统中, 数据的物理结构必须与逻辑结构一致(10) 下列模式中, 能够给出数据库物理存储结构与物理存取方法的是______。
(A)A.内模式B.外模式C.概念模式D.逻辑模式(11) 算法的时间复杂度是指______。
(C)A.执行算法程序所需要的时间B.算法程序的长度C.算法执行过程中所需要的基本运算次数D.算法程序中的指令条数(12) 下列叙述中正确的是______。
计算机二级公共基础知识
计算机二级公共基础知识计算机二级公共基础知识是计算机专业考试中的重要组成部分,它涵盖了计算机的基本概念、硬件、软件、网络以及数据结构等方面的知识。
以下是关于计算机二级公共基础知识的一些要点,以及相应的试题和答案。
# 计算机二级公共基础知识要点1. 计算机系统概述:- 计算机的发展历程- 计算机的分类与应用领域2. 计算机硬件组成:- 中央处理单元(CPU)- 存储器:RAM、ROM、硬盘、固态硬盘等- 输入输出设备:键盘、鼠标、显示器、打印机等3. 计算机软件组成:- 操作系统:Windows、Linux、MacOS等- 应用软件:办公软件、图形设计软件、编程软件等4. 计算机网络基础:- 网络拓扑结构- 网络协议:TCP/IP、HTTP、FTP等- 网络安全:防火墙、加密技术等5. 数据结构与算法:- 线性数据结构:数组、链表、栈、队列- 非线性数据结构:树、图- 常用算法:排序、搜索、递归等6. 数据库基础:- 数据库管理系统:SQL、NoSQL- 数据库设计:ER图、规范化理论- SQL语言基础:数据查询、更新、插入、删除# 试题1. 计算机硬件中,负责执行程序指令的部件是()。
A. 存储器B. 中央处理单元(CPU)C. 输入设备D. 输出设备2. 操作系统的主要功能是()。
A. 存储数据B. 管理计算机硬件资源C. 执行应用程序D. 网络通信3. 在计算机网络中,用于传输控制信息的协议是()。
A. HTTPB. FTPC. TCPD. UDP4. 数据结构中的栈是一种()。
A. 线性结构B. 非线性结构C. 有序结构D. 无序结构5. SQL语言用于()。
A. 编写程序B. 数据库设计C. 数据库查询和操作D. 网络编程# 答案1. 答案:B. 中央处理单元(CPU)2. 答案:B. 管理计算机硬件资源3. 答案:C. TCP4. 答案:A. 线性结构5. 答案:C. 数据库查询和操作# 结束语计算机二级公共基础知识是计算机专业学生和从业人员必须掌握的知识点。
计算机二级公共基础知识题库及答案
计算机二级公共基础知识题库及答案计算机二级公共基础知识题库及答案一、选择题1、下列哪一个不是合法的字符常量?() A. 'x' B. '' C. '\n' D. '' 正确答案是:B. ''。
在C语言中,字符常量需要用单引号括起来,而选项B为双引号,表示一个字符串。
2、以下哪个函数可以将一个数字字符串转换为一个整数?() A. int() B. float() C. str() D. len() 正确答案是:A. int()。
在Python中,int()函数可以将一个数字字符串转换为整数。
例如,int('123')的结果是123。
3、以下哪个运算符可以用于比较两个数的值是否相等?() A. ==B. >=C. <=D. <> 正确答案是:A. ==。
在大多数编程语言中,==是用于比较两个值是否相等的运算符。
例如,在Python中,if a == b的意思是如果a的值等于b的值,则执行接下来的代码块。
4、以下哪个函数可以将一个十进制数转换为二进制数?() A. hex()B. oct()C. bin()D. dec() 正确答案是:C. bin()。
在Python 中,bin()函数可以将一个整数转换为二进制数。
例如,bin(10)的结果是'0b1010'。
5、以下哪个是合法的Python标识符?() A. 123 B. $abc C. def!D. _xyz 正确答案是:D. _xyz。
在Python中,合法的标识符必须以字母、下划线或美元符号开头,后面可以跟着任意个数字、字母或下划线。
因此,选项D是合法的标识符,而选项A、B、C都是不合法的标识符。
二、填空题1、在Python中,可以使用()函数将一个字符串反转。
正确答案是:reverse()。
在Python中,可以使用字符串对象的reverse()方法将一个字符串反转。
计算机二级公共基础知识12套试题及答案
模拟试题一一、选择题(每小题2分)在下列各题的A),B),C),D),4个选项中,只有1个选项是正确选项添涂在答题卡相应位置上,答在试卷上不得分。
1.栈和队列的共同特点是( C )。
A)都是先进先出B)都是先进后出C)只允许在端点处插入和删除元素C)没有共同点2.已知二叉树后序编历序列是dabec,中续遍历序列是debac,它的前序编历序列是( D )。
A)acbedB)decabC)deabcD)cebda33.链表不具有的特点是( B )。
A)不必事先估计存储空间B)可随机访问任一元素C)插入删除不需要的移动元素D)所需空间与线性长度4.结构化程序设计的3种结构是( D )。
A)顺序结构、选择结构、转移结构B)分支结构、等价结构、循环结构C)多分支结构、赋值机构、等价结构D)顺序结构、选择结构、循环结构5.为了提高测试的效率。
应该( D )A)随即选取测试数据B)取一切可能的输入数据作为测试数据C)在完成编码以后指定软件的测试次数D)集中对付那些错误的群集的程序6.算法的时间复杂度是指( C )A)执行算法程序所需要的时间 B)算法程序的长度C)在完成编码以后指定软件的测试次数D)算法程序中的指定条数7.软件生命周期中花费用最多的阶段是( D )A)详细设计B)软件编码C)软件测试D)软件维护8.数据库管理系统DBMS中用来定义模拟、内模式和外模式的语言为( C )A)C B)Basic C)DDL D)DML9.下列有关数据库的描述,正确的是( C )A)数据库是一个DBF文件B)数据库是一个关系C)数据库是一个结构化的数据集合D)数据库是一组文件10.下列有关数据库的描述,正确的是( D )A)数据处理是将信息转化为数据的过程B)数据的物理独立性是指当数据的逻辑结构改变时,数据的存储结构不变C)关系中的每一列称为元组,一个元组就是一个字节D)如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的键字,则称其为本关系的外关键字二、填空题(每空2分)请将每一个空的正确答案写在答题卡【11】~【15】序号的横线上,答案试卷上不得分。
全国计算机等级考试二级公共基础知识及题目汇总(最全)
第一章数据结构与算法12、算法的基本特征(1)可行性(2)确定性(3)有穷性(4)拥有足够的情报。
3、算法复杂度主要包括时间复杂度和空间复杂度。
(1)算法时间复杂度是指执行算法所需要的计算工作量,可以用执行算法的过程中所需基本运算的执行次数来度量。
(212、数据结构主要研究和讨论以下三个方面的问题:数据的逻辑结构、数据的存储结构、对各种数据结构进行的运算。
3、数据结构分为两大类型:线性结构和非线性结构。
(11)有且只有一个根结点;2)每一个结点最多有一个前件,也最多有一个后件。
常见的线性结构有线性表、栈、队列和线性链表等。
(21由n(n≥0)个数据元素组成的一个有限序列,表中的每一个数据元素,除了第一个外,有且只有一个前件,除了最后一个外,有且只有一个后件。
线性表中数据元素的个数称为线性表的长度。
线性表可以为空表。
*:线性表是一种存储结构,它的存储方式:顺序和链式。
2、线性表的顺序存储结构具有两个基本特点:(1)线性表中所有元素所占的存储空间是连续的;(2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。
3、顺序表的插入、删除运算(1)顺性表的插入运算时需要移动元素,在等概率情况下,平均需要移动n/2个元素。
(2)顺性表的删除运算时也需要移动元素,在等概率情况下,平均需要移动(n-1)/2个元素。
插入、删除运算不方便。
1.4 栈和队列在栈中,允许插入与删除的一端称为栈顶,不允许插入与删除的另一端称为栈底。
栈顶元素总是最后被插入的元素,栈底元素总是最先被插入的元素。
即栈是按照“先进后出”或“后进先出”的原则组织数据的。
栈具有记忆作用。
栈的基本运算:1)插入元素称为入栈运算;2)删除元素称为退栈运算;3)读栈顶元素是将栈顶元素赋给一个指定的变量,此时指针无变化。
栈的存储方式和线性表类似,也有两种,即顺序栈和链式栈。
Rear)指向队尾元素,头指针(front)指向排头元素的前一个位置(队头)。
队列是“先进先出”或“后进后出”的线性表。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章数据结构与算法12、算法的基本特征(1)可行性(2)确定性(3)有穷性(4)拥有足够的情报。
3、算法复杂度主要包括时间复杂度和空间复杂度。
(1)算法时间复杂度是指执行算法所需要的计算工作量,可以用执行算法的过程中所需基本运算的执行次数来度量。
(212、数据结构主要研究和讨论以下三个方面的问题:数据的逻辑结构、数据的存储结构、对各种数据结构进行的运算。
3、数据结构分为两大类型:线性结构和非线性结构。
(11)有且只有一个根结点;2)每一个结点最多有一个前件,也最多有一个后件。
常见的线性结构有线性表、栈、队列和线性链表等。
(21由n(n≥0)个数据元素组成的一个有限序列,表中的每一个数据元素,除了第一个外,有且只有一个前件,除了最后一个外,有且只有一个后件。
线性表中数据元素的个数称为线性表的长度。
线性表可以为空表。
*:线性表是一种存储结构,它的存储方式:顺序和链式。
2、线性表的顺序存储结构具有两个基本特点:(1)线性表中所有元素所占的存储空间是连续的;(2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。
3、顺序表的插入、删除运算(1)顺性表的插入运算时需要移动元素,在等概率情况下,平均需要移动n/2个元素。
(2)顺性表的删除运算时也需要移动元素,在等概率情况下,平均需要移动(n-1)/2个元素。
插入、删除运算不方便。
1.4 栈和队列在栈中,允许插入与删除的一端称为栈顶,不允许插入与删除的另一端称为栈底。
栈顶元素总是最后被插入的元素,栈底元素总是最先被插入的元素。
即栈是按照“先进后出”或“后进先出”的原则组织数据的。
栈具有记忆作用。
栈的基本运算:1)插入元素称为入栈运算;2)删除元素称为退栈运算;3)读栈顶元素是将栈顶元素赋给一个指定的变量,此时指针无变化。
栈的存储方式和线性表类似,也有两种,即顺序栈和链式栈。
Rear)指向队尾元素,头指针(front)指向排头元素的前一个位置(队头)。
队列是“先进先出”或“后进后出”的线性表。
循环队列及其运算:所谓循环队列,就是将队列存储空间的最后一个位置绕到第一个位置,形成逻辑上的环状空间,供队列循环使用。
循环队列中元素的个数=rear-front。
1.5 线性链表1、线性链表:线性表的链式存储结构称为线性链表,是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接来实现的。
因此,在链式存储方式中,每个结点由两部分组成:一部分用于存放数据元素的值,称为数据域;另一部分用于存放指针,称为指针域,用于指向该结点的前一个或后一个结点(即前件或后件),如下图所示:线性链表分为单链表、双向链表和循环链表三种类型。
在线性链表中插入元素或删除元素时,不需要移动数据元素,只需要修改相关结点指针。
1.6 树与二叉树几个概念:根结点、孩子结点、双亲结点、兄弟结点、叶子、层、度、深度2、二叉树及其基本性质(1)什么是二叉树1)非空二叉树只有一个根结点;2)每一个结点最多有两棵子树,且分别称为该结点的左子树与右子树。
(2)二叉树的基本性质★性质1 在二叉树的第k 层上,最多有 个结点。
★性质2 深度为m 的二叉树最多有个 个结点。
★性质3 在任意一棵二叉树中,度数为0的结点(即叶子结点)总比度为2的结点多一个。
n 0=n 2+1★性质4 具有n 个结点的二叉树,其深度至少为 ,其中 表示取 的整数部分。
3、满二叉树与完全二叉树满二叉树:除最后一层外,每一层上的所有结点都有两个子结点。
性质5 具有n 个结点的完全二叉树深度为 。
4、二叉树的存储结构在计算机中,二叉树通常采用链式存储结构。
5、★二叉树的遍历 (1)前序遍历(2)中序遍历(3)后序遍历1.7 查找技术查找:根据给定的某个值,在查找表中确定一个其关键字等于给定值的数据元素。
1、顺序查找在平均情况下,利用顺序查找法在线性表中查找一个元素,大约要与线性表中一半的元素进行比较,最坏情况下需要比较n 次。
下列两种情况下只能采用顺序查找:1)线性表是无序表2)采用链式存储结构的链表2、二分法查找特点:比顺序查找方法效率高。
最坏的情况下,需要比较log2n 次。
*:二分法查找只适用于顺序存储的线性表,且表中元素必须按关键字有序(升序)排列。
1.8 排序技术总结:各种排序法比较:1、交换类排序法(方法:冒泡排序n(n-1)/2,快速排序O(nlog 2n),最坏n(n-1)/2))。
2、插入类排序法(方法:简单插入排序n(n-1)/2,希尔排序)。
3、选择类排序法(方法:简单选择排序n(n-1)/2,堆排序O(nlog 2n))。
本章应考点拨:本章内容在笔试中会出现5-6个题目,是公共基础知识部分出题量比较多的一章,所占分值也比较大,约10分。
数据域指针域HEAD …(a)结点结构(b)一个非空的线性链表示意图)1(21≥-kk 12-m 1][log 2+n ][log 2n n 2log 1][log 2+n第二章程序设计基础2.1 程序设计风格程序设计的风格主要强调:“清晰第一,效率第二”。
2.2 结构化程序设计(面向过程的程序设计方法)1、结构化程序设计方法的主要原则可以概括为:自顶向下,逐步求精,模块化,限制使用goto语句。
2、结构化程序的基本结构:顺序结构,选择结构,重复结构(循环结构)。
2.3 面向对象的程序设计客观世界中任何一个事物都可以被看成是一个对象,面向对象方法的本质就是主张从客观世界固有的事物出发来构造系统,提倡人们在现实生活中常用的思维来认识、理解和描述客观事物,强调最终建立的系统能够映射问题域。
也就是说,系统中的对象及对象之间的关系能够如实地反映问题域中固有的事物及其关系。
面向对象方法的主要优点:(1)与人类习惯的思维方法一致;(2)稳定性好;(3)可重用性好;(4)易于开发大型软件产品;(5)可维护性好。
对象是客观世界中的任何实体,对象是实体的抽象。
对象是属性和方法的封装体。
操作描述了对象执行的功能,操作也称为方法或服务。
操作是对象的动态属性。
*:一个对象由对象名、属性和操作三部分组成。
对象的基本特点:标识惟一性,分类性,多态性,封装性,模块独立性好。
:信息隐蔽是通过对象的封装性来实现的。
类是指具有共同属性、共同方法的对象的集合。
所以类是对象的抽象,对象是对应类的一个实例。
许有一个父类,多重继承指一个类允许有多个父类。
本章应考点拨:本章在考试中会出现约1个题目,所占分值大约占2分,是出题量较小的一章。
本章内容比较少,也很简单,掌握住基本的概念就可以轻松应对考试了,所以在这部分丢分,比较可惜。
第三章软件工程基础3.1 软件工程基本概念1、软件的相关概念计算机软件是包括程序、数据及相关文档的完整集合。
软件的特点包括:1)软件是一种逻辑实体,而不是物理实体,具有抽象性;2)软件的生产与硬件不同,它没有明显的制作过程;3)软件在运行、使用期间不存在磨损、老化问题;4)软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,这导致了软件移植的问题;5)软件复杂性高,成本昂贵;6)软件开发涉及诸多的社会因素。
2、软件危机与软件工程软件工程源自软件危机。
所谓软件危机是泛指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
具体的说,在软件开发和维护过程中,软件危机主要表现在:1)软件需求的增长得不到满足。
用户对系统不满意的情况经常发生。
2)软件开发成本和进度无法控制。
开发成本超出预算,开发周期大大超过规定日期的情况经常发生。
3)软件质量难以保证。
4)软件不可维护或维护程度非常低。
5)软件的成本不断提高。
6)软件开发生产率的提高跟不上硬件的发展和应用需求的增长。
总之,可以将软件危机可以归结为成本、质量、生产率等问题。
就是要建造一个优良的软件系统,它所包含的内容概括为以下两点:1)软件开发技术,主要有软件开发方法学、软件工具、软件工程环境。
2)软件工程管理,主要有软件管理、软件工程经济学。
软件工程的主要思想是将工程化原则运用到软件开发过程,它包括3个要素:方法、工具和过程。
方法是完成软件工程项目的技术手段;工具是支持软件的开发、管理、文档生成;过程支持软件开发的各个环节的控制、管理。
软件工程过程是把输入转化为输出的一组彼此相关的资源和活动。
软件生命周期分为软件定义、软件开发及软件运行维护三个阶段:1)软件定义阶段:包括制定计划和需求分析。
制定计划:确定总目标;可行性研究;探讨解决方案;制定开发计划。
需求分析:对待开发软件提出的需求进行分析并给出详细的定义。
2)软件开发阶段:软件设计:分为概要设计和详细设计两个部分。
软件实现:把软件设计转换成计算机可以接受的程序代码。
软件测试:在设计测试用例的基础上检验软件的各个组成部分。
3)软件运行维护阶段:软件投入运行,并在使用中不断地维护,进行必要的扩充和删改。
*:软件生命周期中所花费最多的阶段是软件运行维护阶段。
4、软件工程的目标和与原则(1)软件工程目标:在给定成本、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性且满足用户需求的产品。
(2)软件工程需要达到的基本目标应是:付出较低的开发成本;达到要求的软件功能;取得较好的软件性能;开发的软件易于移植;需要较低的维护费用;能按时完成开发,及时交付使用。
(3)软件工程原则:抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。
件开发过程的复杂性。
23块过大会使模块内部的复杂性增加,不利于模块的理解和修改,也不利于模块的调试和重用;模块太小会导致整个系统表示过于复杂,不利于控制系统的复杂性。
456785、软件开发工具与软件开发环境(1)软件开发工具软件开发工具的完善和发展将促使软件开发方法的进步和完善,促进软件开发的高速度和高质量。
(2)软件开发环境软件开发环境(或称软件工程环境)是全面支持软件开发全过程的软件工具集合。
CASE,Computer Aided Software Engineering)将各种软件工具、开发机器和一个存放开发过程信息的中心数据库组合起来,形成软件工程环境。
它将极大降低软件开发的技术难度并保证软件开发的质量。
3.2 结构化分析方法结构化方法的核心和基础是结构化程序设计理论。
1、需求分析需求分析方法有:1)结构化需求分析方法;2)面向对象的分析方法。
*:需求分析的任务就是导出目标系统的逻辑模型,解决“做什么”的问题。
*:需求分析一般分为需求获取、需求分析、编写需求规格说明书和需求评审四个步骤进行。
2、结构化分析方法结构化分析方法是结构化程序设计理论在软件需求分析阶段的应用。
结构化分析方法的实质:着眼于数据流,自顶向下,逐层分解,建立系统的处理流程,以数据流图和数据字典为主要工具,建立系统的逻辑模型。