计算机专转本辅导第3章计算机软课件.ppt
2022/12/10,1,第3章 计算机软件,3.1 概述3.2 操作系统3.3 程序设计语言及其处理系统3.4 算法和数据结构,2022/12/10,2,3.1 概述,3.1.1. 什么是计算机软件3.1.2. 计算机软件的特性3.1.3. 计算机软件的分类,2022/12/10,3,3.1.1 什么是计算机软件,2022/12/10,4,计算机系统=硬件+软件,计算机系统是由硬件和软件组成的,两者缺一不可!,2022/12/10,5,软件、硬件和用户的关系,硬件的能力非常有限,只是速度极高而已 没有软件,硬件几乎什么任务也完成不了 计算机通过软件才能进行信息处理,2022/12/10,6,什么是程序?,程序是告诉计算机做什么和如何做的一组指令(语句),这些指令(语句)都是计算机能够理解并能够执行的一些命令程序的特性: 用于完成某一确定的信息处理任务 使用某种计算机语言描述如何完成该任务 预先存储在计算机中,启动运行后才能完成任务,2022/12/10,7,程序与数据的关系,程序所处理的对象和处理后得到的结果统称为数据(分别称为输入数据和输出数据)程序必须处理合理的输入数据,否则不会产生有意义的输出程序和数据具有相对性,2022/12/10,8,程序与软件的关系,软件往往指的是设计比较成熟、功能比较完善、具有某种使用价值、且有一定规模的程序软件既包含程序、也包含与程序相关的数据和文档:程序是软件的主体数据指的是程序运行过程中处理的对象和必须使用的一些参数(如三角函数表、英汉词典等)文档指的是与程序开发、维护及操作有关的一些资料(如设计报告、维护手册和使用指南等),2022/12/10,9,程序与软件的关系,“软件” 强调的是产品、工程、产业或学科等宏观方面的含义,“程序”更侧重技术层面的含义软件和程序本质上相同,在不会发生混淆的场合,软件和程序两个名称经常混用,并不严格加以区分,2022/12/10,10,计算机软件与知识产权,软件是智力活动的成果,受到知识产权(版权)法的保护版权授予软件作者(版权所有者)享有下列权利:拷贝、发布、修改、署名、出售、购买一个软件,用户仅仅得到了该软件的使用权,并没有获得它的版权随意进行软件拷贝和分发是一种违法行为,2022/12/10,11,3.1.2 计算机软件的特性,2022/12/10,12,计算机软件特性,1. 不可见性(是无形的,不能被人们直接观察、欣赏和评价) 2. 适用性(可以适应一类应用问题的需要 ) 3. 依附性(依附于特定的硬件、网络和其他软件 ) 4. 复杂性(规模越来越大,开发人员越来越多,开发成本也越来越高),2022/12/10,13,5. 无磨损性(功能和性能一般不会发生变化 ) 6. 易复制性(可以非常容易且毫无失真地进行复制 ) 7. 不断演变性(软件的生命周期 )8. 有限责任(有限保证) 9. 脆弱性(黑客攻击、病毒入侵、信息盗用),2022/12/10,14,3.1.3 计算机软件的分类,2022/12/10,15,系统软件,系统软件泛指那些为了有效地使用计算机系统、给应用软件开发与运行提供支持、或者能为用户管理与使用计算机提供方便的一类软件。,举例:基本输入/输出系统(BIOS)操作系统(如Windows、Unix、Linux等)程序开发工具与环境(如C语言编译器等)数据库管理系统(DBMS)实用程序(Utility,如磁盘清理程序、备份程序、杀毒软件、防火墙等),2022/12/10,16,系统软件的特性,与计算机硬件有很强的交互性,能对硬件进行统一的控制、调度和管理;具有通用性,能为多种应用软件的开发和运行提供支持与服务在任何计算机系统中,系统软件都是必不可少的在购买计算机时,通常计算机供应厂商会提供给用户一些最基本的系统软件,否则计算机无法工作。,2022/12/10,17,最重要的系统软件,操作系统(OS)包括各种实用程序(如磁盘清理程序、备份程序、杀毒软件等)功能上也包含BIOS在内程序设计语言处理系统编译器解释器汇编程序(汇编器)开发工具与平台数据库管理系统(DBMS),2022/12/10,18,应用软件泛指那些专门用于解决各种具体应用问题的软件。按照应用软件的开发方式和适用范围。应用软件可分成通用应用软件和定制应用软件。,应用软件,2022/12/10,19,通用应用软件的主要类别与功能,2022/12/10,20,定制应用软件,定制软件是按照不同领域用户的特定应用要求而专门设计开发的软件。例如超市的销售管理和市场预测系统汽车制造厂的集成制造系统大学教务管理系统医院挂号计费系统酒店客房管理系统这类软件专用性强,设计和开发成本相对较高,从软件知识产权对软件进行分类,商品软件用户需要付费才能得到其使用权。它除了受版权保护之外,通常还受到软件许可证的保护。共享软件(shareware)具有版权,可免费试用一段时间,允许拷贝和散发(但不可修改),过了试用期若还想继续使用,就得交一笔注册费,成为注册用户。,自由软件 (freeware)(开放源代码软件)用户可共享,并允许随意拷贝、修改其源代码,允许销售和自由传播。但是,对软件源代码的任何修改都必须向所有用户公开,还必须允许此后的用户享有进一步拷贝和修改的自由。自由软件的重大意义,2022/12/10,23,3.2 操作系统,3.2.1 概述3.2.2 多任务处理与处理器管理3.2.3 存储管理3.2.4 文件管理 3.2.5 设备管理3.2.6 常用操作系统介绍,2022/12/10,24,3.2.1 概述,2022/12/10,25,操作系统(OS Operating System ),没有安装任何软件的计算机称为裸机, 裸机是无法使用的 操作系统是最重要的一种系统软件,几乎所有计算机都要安装OS,2022/12/10,26,操作系统(OS Operating System ),OS屏蔽了计算机中几乎所有物理设备的技术细节,为使用、开发和运行其他软件提供了一个高效、可靠的平台。OS非常庞大和复杂,它由许多程序模块组成,2022/12/10,27,操作系统的作用,三个主要作用:(1)为计算机中运行的程序管理和分配各种软硬件资源(2)为用户提供友善的人机界面(图形用户界面)(3)为应用程序的开发和运行提供一个高效率的平台,2022/12/10,28,复习:基本输入输出系统BIOS,基本输入/输出系统是存放在主板上只读存储器(flash ROM) 中的一组程序(也称为firmware, 固件 )主要包含4个部分:加电自检程序 (诊断计算机故障)系统自举(装入)程序 (启动计算机工作)CMOS设置程序 (设定和修改计算机配置)基本外围设备的驱动程序 (控制基本的I/O操作),2022/12/10,29,操作系统的启动(boot up),ROMBIOS,RAM,CPU,CMOS,2022/12/10,30,3.2.1 多任务处理与处理器管理,2022/12/10,31,任务、单任务和多任务处理,“任务”指的是要计算机做的一件事,计算机执行一个任务通常就对应着运行一个应用程序“单任务处理”与“多任务处理”单任务处理:前一个任务完成后才能启动后一个任务的运行,任务是顺序执行的多任务处理(Multitasking):允许计算机同时执行多个任务,任务是并发执行的,2022/12/10,32,如何知道有哪些任务在运行?,每启动一个应用程序,OS就会打开一个相应的窗口,通常一个窗口就是一个任务每启动一个应用程序,OS就会在任务栏上显示一个相应的任务按钮(程序按钮),通常一个按钮就是一个任务窗口可以放大或缩小,甚至可以“最小化”,但任务的运行不受其影响使用“任务管理器”程序可以了解每个任务的运行情况,2022/12/10,33,如何知道有哪些任务在运行?,2022/12/10,34,什么是前台任务与后台任务?,前台任务:能接受用户输入(击键或按击鼠标)的窗口只能有一个,称为活动窗口,它所对应的任务称为前台任务后台任务:除前台任务外,所有其它任务均为后台任务,2022/12/10,35,前台任务与后台任务的区别:前台任务对应的窗口(活动窗口)位于其它窗口的前面活动窗口的标题栏比非活动窗口颜色更深(深蓝色)前台任务与后台任务的共同点:都在计算机中运行前台任务与后台任务的切换:为了输入信息到某个后台任务中去,必须切换窗口(单击要激活的后台任务窗口的任何部位, 或单击任务栏中对应的任务按钮),2022/12/10,36,CPU的管理(处理器管理),目的:让CPU轮流为所有任务服务原则:公平性;优先级;负载均衡方法:按时间片轮转(10-20ms为1个时间片 )按优先级调度,2022/12/10,37,3.2.3 存储管理,2022/12/10,38,操作系统一般都采用虚拟存储技术(也称虚拟内存技术,简称虚存)进行存储管理。虚拟存储技术在基本思想:作业在运行时,没有必要将全部程序和数据同时放进内存。虚拟存储技术只把当前需要运行的那部分程序和数据放在内存,且当其不再使用时,就被换出到外存。即程序中暂时不用的其它部分放在作为虚拟存储器的硬盘上,运行时由操作系统根据需要把保存在外存上的部分调入内存。,2022/12/10,39,虚拟存储技术使外存空间成为内存空间的延伸,取消了内存和外存的区分,增加了运行程序可用的存储容量,使计算机系统似乎有一个比实际内存储器容量大得多得内存空间。 Windows XP操作系统中,虚存空间最大可达到4GB,页面的大小通常是4KB,页面页面调度算法是“最近最少使用”(LRU)算法。虚拟内存交换文件的文件名是pagefile.sys,它位于系统盘根目录下。,2022/12/10,40,3.2.4 文件及其管理,2022/12/10,41,文件,文件是存储在外存储器中的一组相关信息的集合,例如: 一个程序 一张数码相片 一只MP3歌曲 一封电子邮件文件是外存中信息的存取(读出/写入)单位计算机中所有的程序和数据都组织成为文件存放在外存储器中,并使用其名字进行存取操作,2022/12/10,42,文件名和文件类型,文件的名字由两部分组成:(主文件名) .扩展名主文件名(简称文件名)是文件的主要标识,不可省略文件扩展名(类型名)由“.”加34个英文字母组成, 用于区分文件的类型:程序文件(可执行文件):.exe .com文件中包含的是可以由CPU执行的程序的二进制代码,2022/12/10,43,2. 数据文件:纯文本文件(.txt) PDF文件(.pdf) Word文件(.doc) 投影片文件(.ppt) 数码照片文件(.jpg) MP3音乐文件(.mp3) 文件中包含的是由程序处理的数据的二进制代码文件名字使用西文(或中文)字符组成,但不能使用某些特殊字符(如 ? * :“”等),2022/12/10,44,Windows XP 的文件,允许使用长文件名,即文件名最多可包含255个中文或西文字符英文字母的大、小写只在形式上加以区分,实际上不予区别 (例如: Text.DOC 与 text.doc 是同一个文件)常用程序文件的扩展名:.exe .com .dll .bat常用数据文件的扩展名:,2022/12/10,45,文件的组成和文件说明信息,每一个文件都由2部分组成:,2022/12/10,46,Windows XP 的文件组织,文件目录在Windows中称为文件夹,它采用多级层次式结构(也叫树状结构)。每个逻辑盘(物理盘或硬盘上的分区)是一个根文件夹文件夹中既可包含文件,也可包含文件夹 (子文件夹),子文件夹又可存放文件和子文件夹, 形成树状多级文件夹结构,根节点和中间节点都是文件夹,叶节点都是文件,2022/12/10,47,3.2.5 设备管理,OS中的“设备管理”程序负责:对系统中的各种输入输出设备进行管理处理用户(或应用程序)的输入/输出请求,方便、有效、安全地完成输入/输出操作,2022/12/10,48,3.2.6 常用操作系统介绍,2022/12/10,49,操作系统的几种类型,PC机使用的操作系统一般都具有多任务处理功能网络服务器上安装运行的是“网络操作系统”,特点是:具有强大的多用户并发处理能力支持多种网络通信功能,提供丰富的网络应用服务安全性强,可靠性好,2022/12/10,50,军事指挥和武器控制系统、电网调度和工业控制系统、证券交易系统等, 安装运行的是“实时操作系统”,特点是:对外部事件能快速作出响应,具有很高的可靠性和安全性嵌入式计算机应用中运行的是“嵌入式操作系统”,特点是:快速、高效、具有实时处理功能代码非常紧凑,存储需求小,2022/12/10,51,微软Windows操作系统,特点:提供了多任务处理能力在个人计算机上广泛使用采用图形用户界面,简化计算机操作版本的演变:,2022/12/10,52,UNIX和Linux操作系统,都是主流操作系统,主要用于:在巨型机、大型机上作为网络操作系统使用经过裁剪后可用于嵌入式系统关于Linux属于自由软件(开源软件),原创者是芬兰青年学者李努斯.托瓦尔兹(Linus Torvalds)应用软件越来越多,用户正在快速壮大,许多商业软件公司也加入了这一行列,2022/12/10,53,真题讲解,一、选择题1、 Windows操作系统的文件夹结构是一种 。(2005年) A、对象结构 B、网状结构 C、星型结构 D、树状结构,答案:D,2022/12/10,54,2、 计算机软件中操作系统的作用是_。 (2006年) A管理系统资源,控制程序的执行 B实现软硬件功能的转换 C把源程序翻译成目标程序 D便于进行数据处理,答案:A,2022/12/10,55,3、下列软件中,_是专门的网页制作软件。(2006年) A. FrontPage 2000 B. Visual BASIC 6.0 C. Excel 2000 D. PowerPoint2000,答案:A,2022/12/10,56,4、在计算机的软件分类中,应用软件和系统软件的相互关系是_。 (2006年) A. 前者以后者为基础B. 后者以前者为基础 C. 每一类都不以另一方为基础 D. 每一类都以另一方为基础,答案:A,2022/12/10,57,5、在计算机系统中,对计算机资源进行统一管理和调度的软件是 。 (2007年) A. 语言处理程序 B. 应用软件 C. 操作系统 D. 数据库管理系统,答案:C,2022/12/10,58,6、应用软件分为通用软件和定制应用软件两类,下列软件中全部属于通用应用软件的是 。 (2007年) A. WPS、Windows、Word B. PowerPoint、MSN、UNIX C. ALGOL、Photoshop、Fortran D. PowerPoint、Photoshop、Word,答案:D,2022/12/10,59,7、虚拟存储器技术是将 上的一部分作为内存来使用。(2007年) A. 硬盘 B. 缓存 C. 光盘 D. 内存条,答案:A,2022/12/10,60,8、下列关于计算机软件的叙述,错误的是_。 (2008年) A操作系统产生于高级语言及其编译系统之前B为解决软件危机,人们提出了用工程方法开发软件的思想C数据库软件技术、软件工具环境技术都属于计算机软件技术D设计和编制程序的工作方式是由个体发展到合作方式,再到现在的工程方式,答案:A,2022/12/10,61,9、下列软件属于系统软件的是_。 (2008年)金山词霸 SQL Sever FrontPage CorelDraw 编译器 Linux 银行会计软件 Oracle Sybase 民航售票软件 A B C D,答案:B,2022/12/10,62,10、虚拟存储系统能够为用户程序提供一个容量很大的虚拟地址空间,其大小受到_的限制。 (2008年) A内存实际容量大小 B外存储器及CPU地址表示范围 C交换信息量大小 DCPU时钟频率,答案:B,2022/12/10,63,11、下列关于操作系统多任务处理与处理器管理的叙述,错误的是_。(2008年) AWindows操作系统支持多任务处理 B分时是指将CPU时间划分成时间片,轮流为多个任务服务 C并行处理操作系统可以让多个处理器同时工作,提高计算机系统的效率 D分时处理要求计算机必须有多个CPU,答案:D,2022/12/10,64,12、操作系统是现代计算机必不可少的系统软件之一。下列关于操作系统的叙述,错误的是 。 (2009年) A. Linux操作系统是由美国Linux公司开发的 B. UNIX操作系统是一种多用户分时操作系统,可用于PC机 C. 目前Windows XP操作系统有多个不同版本 D. Windows Server 2003操作系统属于网络操作系统,答案:A,2022/12/10,65,13、软件的特性不包括_。 (2010年) A不可见性 B脆弱性 C磨损性 D有限责任性,答案:C,2022/12/10,66,14、下列软件中不属于系统软件的是_。 (2010年) AAdobe Acrobat BBIOS CJava编译器 DORACLE,答案:A,2022/12/10,67,二、多选题 1、下列关于计算机软件的叙述,错误的是_。 (2009年) A. 用程序设计语言编写的源程序可直接在计算机上执行 B. “软件危机”的出现是因为计算机硬件发展严重滞后 C. 利用“软件工程”的理念与方法,可以编制高效高质的软件 D. 用户购买一个软件后,仅获得该软件的使用权,并没有获得其版权,答案:AB,2022/12/10,68,三、填空题1、 Windows中的文件有四种属性:系统、存档、隐藏和 。 (2005年)2、计算机软件指的是能指示计算机完成特定任务的、以电子格式存储的程序、_和相关的文档的集合。 (2005年),答案:只读,答案:数据,2022/12/10,69,3、操作系统中虚拟存储器的容量_实际内存(填大于、等于、小于)。 (2009年)4、在Windows XP中,用作虚拟内存的页面文件的文件名是_,它位于系统盘的根目录下。 (2010年),答案:大于,答案:Pagefile.sys,2022/12/10,70,四、判断题1、Wndows操作系统采用并发多任务方式支持系统中多个任务的执行,但任何时刻只有一个任务正被CPU执行。( )(2007年)2、所有存储在闪存盘上的MP3音乐都是计算机软件。( ) (2008年),答案:T,答案:F,2022/12/10,71,3、自由软件允许用户随意拷贝、修改其源代码,但不允许销售。( )(2009年)4、在Windows中,在哪个硬盘逻辑盘上设置虚拟内存以及虚拟内存的容量都可以由用户设定。( )(2009年),答案:F,答案:T,2022/12/10,72,5、虚拟存储器采用的页面调度算法是“先进先出”(FIFO)算法。(2010年),答案:F,2022/12/10,73,例题讲解,一、选择题1、程序设计语言的编译程序或解释程序属于_。 A. 系统软件 B. 应用软件 C. 实时系统 D. 分布式系统,答案:A,2022/12/10,74,2、下列关于操作系统设备管理的叙述中,错误的是_。 A.设备管理程序负责对系统中的各种输入输出设备进行管理 B.设备管理程序负责处理用户和应用程序的输入输出请求 C.每个设备都有自己的驱动程序 D.设备管理程序驻留在BIOS中,答案:D,2022/12/10,75,3 、 对于下列7个软件:Windows ME Windows XP Windows NT Frontpage Access Unix Linux ,其中,_均为操作系统软件。 A. B. C. D. ,答案:D,2022/12/10,76,3.3 程序设计语言 及其处理系统,3.3.1 程序设计语言分类 3.3.2 程序设计语言的组成3.3.3 程序设计语言处理系统 3.3.4 常用程序设计语言介绍,2022/12/10,77,3.3.1 程序设计语言分类,机器语言汇编语言高级程序设计语言,2022/12/10,78,。,程序是为了用计算机解决某个问题而采用程序设计语言编写的一个指令序列程序设计语言按其级别可以划分为机器语言、汇编语言、高级语言三类。,2022/12/10,79,机器语言,机器语言就是计算机的指令系统指令是使用二进制编码表示的用机器语言编程序, 也就是直接使用二进制代码编写程序优点:可以直接被计算机执行缺点:记不住、难理解、效率低、不易维护不同的机器语言程序,相互不兼容现在已不直接用机器语言编制程序!,2022/12/10,80,汇编语言,用助记符号来表示机器指令中的操作符与操作数,优点:操作数直接使用十进制程序相对容易理解,缺点:大型程序难以开发依赖于具体计算机,2022/12/10,81,高级程序设计语言,目的:克服汇编语言的缺陷,提高编程和维护的效率 特点:接近人们日常使用的自然语言(主要是英语)容易理解、记忆和使用可在不同计算机上通用对使用的符号、词汇、语法和语义等各种语言成分都有严格的规定,2022/12/10,82,3.3.2 程序设计语言的成分,2022/12/10,83,程序设计语言的4种基本成分,数据成分:用于描述程序所涉及的对象数据 运算成分:用以描述程序中所包含的运算(算术运算、逻辑运算、字符串运算等)控制成分:用以控制程序中所含语句的执行顺序传输成分:用以描述程序中的数据传输操作,例如 I/O语句,2022/12/10,84,程序语言中的控制成分,控制成分用来提供一种基本框架,在此基本框架的支持下,将数据和对数据的运算组合成程序三种控制结构:,2022/12/10,85,3.3.3 程序设计语言 处理系统,2022/12/10,86,程序设计语言的翻译程序,把甲语言编写的程序翻译为等价的乙语言编写的程序。其中甲语言程序称为源程序,乙语言程序称为目标程序,2022/12/10,87,解释程序与编译程序的区别,解释:解释器直接解释并且执行源语言程序,不产生目标程序(相当于“口译”)编译:把源程序编译为机器语言目标程序后,再由计算机运行(相当于“笔译”),BASIC、Visual Basic、VBScript、Java、JavaScript等都是解释执行的语言,C、C+等都是需要编译的语言,2022/12/10,88,编译程序的处理过程,2022/12/10,89,3.3.4 常用程序设计语言介绍,2022/12/10,90,FORTRAN语言,FORTRAN是FORmula TRANslation (公式翻译)的缩写词,它是一种主要用于数值计算的面向过程的程序设计语言。FORTRAN语言的特点是接近数学公式,简单易用 目前最新的国际标准是FORTRAN2003,2022/12/10,91,BASIC和Visual Basic语言,BASIC语言的特点是简单易学Visual BASIC(VB)语言是微软公司基于BASIC发展而来的一种程序设计语言,特点是:是一种可视化的、面向对象的、采用事件驱动方式的结构化高级程序设计语言具有高效率、简单易学及功能强大的特点可以高效、快速地开发Windows 环境下功能强大、图形界面丰富的应用软件,2022/12/10,92,Java语言,由SUN Microsystem公司于1995年发布的一种面向对象的、用于网络环境的程序设计语言基本特征是:适用于网络分布环境具有一定的平台独立性安全性和稳定性好Java语言受到各种应用领域的重视,取得快速的发展,在Internet上已推出了用Java语言编写的很多应用程序,2022/12/10,93,C语言和C+语言,C语言是19721973年间由ATT公司Bell实验室开发而成C语言兼有高级语言的优点和汇编语言的效率,有效地处理了简洁性和实用性、可移植性和高效性之间的矛盾C+语言以C语言为基础发展而成,既有数据抽象和面向对象能力,运行性能高,又能与C语言兼容,因而C+语言迅速流行,成为当前面向对象程序设计的主流语言,2022/12/10,94,3.4 算法和数据结构,3.4.1 算法3.4.2 数据结构,2022/12/10,95,3.4.1 算法,2022/12/10,96,算法是解决问题的方法与步骤,算法必须满足的性质: 确定性:算法中每一步操作的含义必须清楚明确,无二义性有穷性: 算法在执行了有限步操作后必须结束能行性: 算法中有待实现的操作都是计算机可执行的,即必须在计算机的能力范围之内,且在有限时间内能够完成 输出:算法结束后至少产生一个输出(包括参量或状态的变化),2022/12/10,97,算法显著特征是,它解决的是某一类问题而不是一个特定的问题。算法设计一般采用由粗到细、由抽象到具体的逐步求精的方法。 软件的主体是程序,程序的核心是算法。,2022/12/10,98,算法的表示方法,文字说明流程图表示用N-S盒图表示算法用PAD图描述算法伪代码(一种介于自然语言和程序设计语言之间的文字和符号表达工具),2022/12/10,99,3.4.2 数据结构,2022/12/10,100,数据结构,数据结构 研究如何在计算机中表示被处理的对象及对象之间的关系,即如何组织数据。精心设计的数据结构可使算法获得更高的时间效率或空间效率,2022/12/10,101,数据结构三方面的内容,1. 数据的抽象(逻辑)结构,即数据结构中包括哪些元素,相互之间有什么关系等。例如:,2. 数据的物理(存储)结构,即数据的抽象结构如何在实际的存储器中予以实现,数据元素如何表示,相互关系如何表示等,3. 定义在数据结构上的一组运算(操作)及其实现方法,2022/12/10,102,常用的线性 数据结构有线性表、栈、队列等。“线性表”和“树”都是典型的数据逻辑结构,在其基础上还可以形成许多更复杂的数据结构,如二叉树、森林、多重表、图(网状)等结构。,2022/12/10,103,数据的存储结构,数据的存储结构实质上就是它的逻辑结构在计算机存储器中的实现。存储结构一般可以有两种方式:一种是“数组”形式的顺序结构,即将它的元素按其先后次序在存储器中顺序地存放另一种是链接表结构,即使用指针把在存储器中无序存放的数据元素关联起来,建立先后顺序,实现“链接表”结构。,2022/12/10,104,不同数据结构各有其相应的若干运算,常用的运算有检索、插入、删除、更新、排序等。瑞士计算机科学家尼沃思(N.Wirth)在20世纪70年代曾经提出过一个著名公式:“数据结构+算法 = 程序”之后他又提出:“计算机科学就是研究算法的学问”,数据的运算,2022/12/10,105,真题讲解,一、选择题 1、 能将高级语言源程序转换成目标程序。 (2005年) A、编译程序 B、编辑程序 C、解释程序 D、调试程序,答案:A,2022/12/10,106,2、以下常用的高级程序设计语言中,主要用于数值计算的是 。 (2007年) A. Fortran B. BASIC C. Jave D. C,答案:A,2022/12/10,107,3、算法是问题求解规则的一种过程描述。下列关于算法的叙述,正确的是_。 (2008年) A算法一定要用高级语言描述 B可采用类似自然语言的“伪代码”或流程图来描述算法 C条件选择结构由条件和选择两种操作组成,因此算法允许有二义性 D算法要求在若干或无限步骤内得到所求问题的解答,答案:B,2022/12/10,108,4、下列关于计算机机器语言的叙述,错误的是 。 (2009年) A. 机器语言是用二进制编码表示的指令集合 B. 用机器语言编制的某个程序,可以在各种不同类型的计算机上直接运行 C. 用机器语言编制的程序难以维护和修改 D. 用机器语言编制的程序难以理解和记忆 。,答案:B,2022/12/10,109,5、下列关于计算机算法的叙述,错误的是 。 (2009年) A. 算法与程序不同,它是问题求解规则的一种过程描述,总是在执行有穷步的运算后终止 B. 算法的设计一般采用由细到粗、由具体到抽象的逐步求解的方法 C. 算法的每一个运算必须有确切的定义,即每一个运算应该执行何种操作必须是清楚明确的,无二义性 D. 分析一个算法好坏,要考虑其占用的计算机资源(如时间和空间)、算法是否易理解、易测试和易调试,答案:B,2022/12/10,110,6、数据结构包括三方面的内容,它们是 。 (2009年) A. 数据的存储结构、数据的一致性和完备性 B. 数据的逻辑结构、数据间的联系和他们的表示 C. 数据的逻辑结构、数据间的联系和他们的存储结构 D. 数据的逻辑结构、数据的存储结构和数据的运算,答案:D,2022/12/10,111,7、下列关于高级程序设计语言中数据成分的叙述,错误的是 。 (2009年) A. 数据的名称用标识符来命名 B. 数组是一组相同类型数据元素的有序集合 C. 指针变量中存放的是某个数据对象的地址 D. 程序员不能自己定义新的数据类型,答案:D,2022/12/10,112,8、I/O语句“printf(“hello!”);”属于高级语言中的_成分。 (2010年) A传输 B数据 C运算 D控制,答案:A,2022/12/10,113,9、程序与算法相比,可以不满足下列_特性。 (2010年) A每一步操作都是可执行的(能行性) B至少产出一个输出量(包括参量状态的改变) C在执行了有穷步的操作后终止(有穷性) D每一步操作必须有确切的定义(确定性),答案:C,2022/12/10,114,10、著名的计算机科学家尼 沃思提出了_。 (2010年) A数据结构+算法=程序 B存储控制结构 C信息熵 D控制论,答案:A,2022/12/10,115,二、多选题1、下列关于机器语言程序与高级语言程序的说法中,错误的是 。 (2007年) A. 机器语言比高级语言程序执行速度慢 B. 机器语言比高级语言程序可移植性强 C. 机器语言比高级语言程序可读性差 D. 有了高级语言程序,机器语言程序就无存在的必要了,答案:ABD,2022/12/10,116,2、数据结构主要研究程序设计中计算机操作对象以及它们之间的关系和运算。下列关于数据结构的叙述,正确的是_。 (2008年) A数据的运算是指数据存储结构的运算B数据的存储结构是其逻辑结构在计算机存储器上的实现C数据的逻辑结构是数据间关系的描述,它只抽象地反映数据元素间的逻辑关系D线性表和树是典型的数据逻辑结构,链接表是典型的数据存储结构,答案:BCD,2022/12/10,117,3、在完成相同功能的前提下,用机器语言编写的程序与用高级语言编写的程序相比,下列叙述错误的是_。 (2010年) A前者比后者执行得快 B前者比后者可移植性强 C前者比后者占用存储空间小 D前者比后者容易编写和调试,答案:BD,2022/12/10,118,三、填空题1、C+语言是以C语言为基础发展起来的,已成为当前面向 程序设计的主流语言之一。 (2007年)2、 在软件开发过程中,简单的说, 就是解决问题的方法和步骤(2007年),答案:对象,答案:算法,2022/12/10,119,3、解决某一问题的算法也有多种,但它们都必须满足确定性、有穷性、能行性、输入和输出等基本要求。其中输出的个数应大于等于 。(注意:填一个数字)(2008年),答案:1,2022/12/10,120,4、由高级语言编写的源程序要转换成计算机能直接执行的目标程序,首先必须经 过 。(2008年),答案:编译,2022/12/10,121,5、若求解某个问题的程序要反复多次执行,则在设计求解算法时,应重点从 代价上考虑。 (2009年),答案:时间,2022/12/10,122,6、瑞士计算机科学家尼 沃思曾经说过,计算机科学就是研究_的学问。 (2010年),答案:算法,2022/12/10,123,四、判断题1、程序设计语言画分为机器语言、汇编语言和高级语言三类,其中高级语言的运算速度最快。( )(2006年),答案:F,2022/12/10,124,2、简单地说,数据结构是程序设计中由若干数据元素按照一定方式构成的复合数据以及作用于其上的函数或运算。 ( )(2007年),答案:T,2022/12/10,125,3、高级语言种类繁多,但其基本成分可归纳为数据成分、运算成分、控制成分和传输成分等4种,算术表达式属于运算成分。( )(2008年),答案:T,2022/12/10,126,例题讲解,一、选择题1、高级语言程序中的算术表达式(如XYZ),属于高级程序语言中的_成分。 A. 数据 B. 运算 C. 控制 D. 传输,答案:B,2022/12/10,127,二、填空题1、高级程序设计语言种类繁多,但其基本成分可归纳为数据成分、控制成分等四种,其中算术表达式属于 成分 。2、Java语言是一种面向 的程序设计语言,特别适用于网络环境的软件开发。,答案:运算,答案:对象,2022/12/10,128,三、判断题1、 MATLAB是一种面向数值计算的高级程序设计语言。( )2、 程序设计语言可分为机器语言、汇编语言和高级语言,其中高级语言比较接近自然语言,而且易学、 易用、程序易修改。 ( ),答案:F,答案:T,