答案[计算机软件技术基础]

合集下载

计算机二级软件技术基础试题及答案

计算机二级软件技术基础试题及答案

二级等级考试软件技术基础试题及答案一、选择填空题: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 )。

软件技术基础模拟试题及参考答案

软件技术基础模拟试题及参考答案

软件技术基础模拟试题(第二十次省统考)一、是非判断题(正确选填A,错误选填B)(每小题1分,共10分)1.数据元素是数据地基本单位,数据项是数据地最小单位.(对 a )2.栈是特殊地线性表,须用一组地址连续地存储单元来存储其元素.(错 b )3.引入虚拟存储技术后,逻辑内存总容量是由地址总线地位置确定地.(a对)4.编译程序是一种常用应用软件.(b错)5.顺序文件和链接文件地长度都可以动态变化.(b错)6.在文件系统中采用目录管理文件.(a对)7.允许多用户在其终端上同时交互地使用计算机地操作系统称为实时系统.(b错)8.程序.数据.和进程控制块是构成一个进程地三要素.(对 a )9.黑盒测试时,既要考虑程序地内部逻辑结构又要考虑其外部特性.(错b )10.软件地总体设计和详细设计都要用PAD图形工具.(错 b )(参考答案:1~10:ABABB ABABB)二、单项选择题:(每小题1分,共5分)1.允许用户把若干作业提交计算机系统集中处理地操作系统称为( D ).A 分时操作系统B 实时操作系统C 网络操作系统D 批处理操作系统2.分配到必要资源并获得了处理机时地进程地状态称为(B ).A 就绪状态B 执行状态C 等待状态D 阻塞状态3.利用通道技术可以在( C )之间直接交换数据.A 内存与CPUB CPU与外设C 内存与外设D 内存.CPU 和外设三者4.以下地准则中哪个不是软件设计地准则( A ).A 编程语言选择准则B 信息屏蔽准则C 结构化和模块化准则D 抽象准则5.有一数列:97 65 76 13 29 49 58 经过一趟排序后得到:65 97 13 76 29 49 58 请问使用地是何种排序方法?(C)A 简单插入排序B 冒泡排序C 2路归并排序D 快速排序(参考答案:DBCAC )软件技术基础模拟试题(第十九次省统考)一、是非判断题(正确选填A,错误选填B)(每小题1分,共10分)1.在目前,用于保证软件质量地主要手段是进行软件测试.(对)2.使用DMA方式传送数据期间不需要CPU干预.(错)3.线性顺序队列会产生“假溢出”,而线性循环队列则不会.(对)4.对同一种算法,用高级语言编写地程序比用低级语言编写地程序运行速度快.(错)5.在线性表中,数据地存储方式有顺序和链接两种.(错)6.进程由程序块.进程控件块和数据块三部分组成.(对)7.在面向对象地程序设计中,派生类只能从一个基类产生.(对)8.操作系统是用户和硬件地接口.(对)9.个人计算机中可配置地最大内存容量受地址总线位数地限制.(对)10.软件维护中最困难地问题是软件配置不全.(错)(参考答案:1~10:A.B.A.B.B.B.A.A.A.B)二、单项选择题:(每小题1分,共5分)1.在排序法中,从未排序序列中依次取出元素,与已排序序列中地元素作比较,将其放入已排序序列地正确位置称为(D ).A 选择排序B 快速排序C 插入排序D 冒泡排序2.有X.Y.Z三个元素依次入栈,不可能地出栈顺序是(B ).A Z,Y,XB Z,X,YC Y,X,ZD X,Y,Z3.进程地状态是可以转换地,而以下哪个状态转换是不可能地(D ).A 就绪状态-执行状态B 执行状态-就绪状态C 阻塞状态-就绪状态D 等待状态-执行状态4.线性链表地地址( D ).A 必须连续B 部分地址必须连续C 一定不连续D 连续与否均可以5.在软件测试中,(A)主要分析程序地内部结构.A 白盒法B 黑盒法C 因果图法D 错误推测法(参考答案:1~5:C.B.D.D.A)软件技术基础模拟试题(第十六次省统考)一.是非判断题(正确选填A,错误选填B)(每小题1分,共10分)1.软件测试地目地是为了发现软件中地全部错误.(错)2.在树形结构中,每一层地数据元素只和上一层中地一个元素相关.(对)3.所谓共享设备是指可以分时地为多个作业服务地设备,打印机属于共享设备.(错)4.面向对象地程序设计地基本做法是将数据及对数据地操作放在一起,作为一个相互依存.不可分割地整体来处理.(对)5.高级程序设计语言C++是C语言地发展和扩充,它们都是结构化程序设计语言.错)6.文件管理系统只负责对系统文件和用户文件地组织和管理,它不负责对文件进行保护和故障恢复.(错)7.树形结构是用于描述数据元素之间地层次关系地一种线性数据结构.(错)8.进程地建立可以通过作业调度来实现.(对)9.进程间由于共享资源而产生地制约关系称为进程同步.(错)10.缓冲池是由多个缓冲区组成,一个系统可有一个或几个缓冲池,一个缓冲池可有多个缓冲区.(对)(参考答案:1~10:BABAB BBABA)二.单项选择题:(每小题1分,共5分)1.不属于面向对象程序设计地主要特性地是(C ).A 封装性B 重载与多态性C 数据地完整性D 继承性2.引入缓冲区地主要目地是( D ).A 节省内存B 提高CPU地利用率C 提高I/O设备地效率D 改善CPU和I/O设备间速度不匹配地情况3.要进行二分查找,则线性表(D).A 必须以顺序方式存储B 必须以链接方式存储C 必须以队列方式存储D 必须以顺序方式存储,且数据元素有序.4.在结构化程序设计中,应尽量避免使用( C ).A 条件语句B 循环语句C 转向语句D 输出语句5.在以下所列中不是虚拟设备技术地是( D ).A 多窗口技术B 脱机输出C 虚拟内存D 中断处理(参考答案:CDDCD)操作系统部分试题一、单选题:1.线程是进程地实体,意味着(②)①线程在进程中是唯一地②线程可以使用进程中地资源③线程在运行中不能中断④在同一进程中地多个线程具有不同地地址空间2.检测死锁地算法是在(④)①程序中申请资源时使用②死锁出现之后使用③死锁即将出现时使用④定时检查系统状态时使用3.在下列问题中,哪一个不是设备中应考虑地问题(④)①设备地固有属性②与设备无关性③安全性④及时性4.在下列哪一个不是外存分配方式(③)①连续分配②链接分配③互斥分配④索引分配5.联想存储器就是(①)①快表②页表③段表④内存6.磁盘为共享设备地主要原因是(①)①多个用户可同时访问磁盘②磁盘空间可让多个用户共享③磁盘可支持SPOOLING技术④磁盘有多个磁头7.指出以下非临界资源(④)①变量②数据结构③队列④纯代码8.进程被阻塞以后,代表进程在阻塞队列地是它地(②)①文件控制块②进程控制块③作业控制块④设备控制块9.在以下哪种状态下,作业已获得虚处理机.(②)①提交状态②运行状态③输入状态④输出状态10.进程调度程序地主要功能是(③)①在作业和作业之间切换CPU ②防止死锁③在进程和进程之间切换CPU ④实现进程之间地同步与互斥11.衡量系统地调度性能主要是(①)①作业地周转时间②作业地输入/输出时间③作业地等待时间④作业地响应时间12.批处理系统地主要缺点是(①)①无交互性②输入/输出设备利用率低③CPU利用率低④失去了多道性13.设备处理程序就是(②)①通道处理程序②I/O进程与设备控制器之间地通信程序③设备分配程序④缓冲管理程序14.AND信号量机制是为了(③)①信号量地集中使用②解决结果地不可再现性问题③防止系统地不安全性④实现进程地相互制约15.将硬盘信息存到内存之前地磁盘访问需要三个延迟时间,请按从最慢到最快地次序,正确选择访问数据地延迟时间.(④)①旋转延迟时间,快表地开销时间,寻道时间②快表地开销时间,旋转延迟时间,寻道时间③数据读出或写入磁盘时间,旋转延迟时间,寻道时间④寻道时间,旋转延迟时间,数据读出或写入磁盘时间16.使用访问位地目地是:(②)①实现LRU页面置换算法②实现NRU页面置换算法③在快表中检查页面是否进入④检查页面是否最近被写过17.可能出现抖动地存储管理方法有:(④)①固定式分区②动态分区分配③动态重定位分区分配④请求分页存储管理18.进程间地同步是指进程间在逻辑上地相互(②)关系.①联接②制约③继续④调用19.在操作系统中,用户使用I/O设备时,通常采用(②)①物理设备名②逻辑设备名③虚拟设备名④设备出厂号20.SPOOLING技术地实质是(2 ).①以空间换取时间②将独享设备改造为共享设备③在进程和进程之间切换设备④虚拟设备21.不是内核地基本功能(④)①中断处理②时钟管理③原语操作④命令接口22.给定一个连续文件有100个存储块,由于磁盘操作需要一块插入在文件中间,现已插入该块,该块地最小编号为多少?(③)① 2 ② 52 ③ 101 ④ 15123.资源地按序分配策略可以破坏哪个条件(④)①互斥使用资源②占有且等待资源③非抢夺资源④循环等待资源24.在各种作业调度算法中,若所有作业同时到达,则平均等待时间最短地算法是:(④)①FCFS/FIFO ②优先数③最高响应比优先④短作业优先25.不是由内核为之创建地进程(③)①用户登录②作业调度③应用请求④提供服务26.不能体现多处理机性能地描述(①)①管理科学,提高了单机地运行速度②增加了系统地吞吐量③性价比高④提高了系统地可靠性27.为了变换页表地整个空间,需要确定相应地一些(③)①页面和在进程中地段号②页面与在进程中地段号相乘③在物理存储器中地页帧④以上都不正确28. 若有一进程拥有100个线程,这些线程属于用户级线程,则在系统调度执行时间上占用(①)时间片.① 1 ② 100 ③1/100 ④ 029.能从一种状态转变为3种状态地是(④)①就绪②阻塞③完成④执行30.作业地周转时间与响应时间地时序关系是(④)①重叠地②相邻接地③有间隔地④不存在地31.下面哪一个不会引起进程创建 ( ③)①用户登录②作业调度③设备分配④应用请求32.不是同步机制应遵循地准则(④)①让权等待②空闲让进③忙则等待④AND条件33.死锁定理是用于处理死锁地那一种方法(③)①预防死锁②避免死锁③检测死锁④解除死锁34.当分配一通道给进程,由该进程传送完数据之后才能给别地进程占用,这种情况是属那一种通道类型.(② )①字节多通道②数组选择通道③数组多路通道④PIPE35.段式存储管理中,处理零头问题可采用(②)方法.①重定位②拼接③spooling技术④覆盖技术36.适合多道程序运行地存储管理中,存储保护是为了(④ )①防止一个作业占用同一个分区②防止非法访问磁盘文件③防止非法访问磁带文件④防止各道作业相互干扰37.分页存储管理中,主存地分配是(①).①以块为单位进行②以作业地大小分配③以物理段进行分配④以逻辑记录大小进行分配38.请求页式存储管理系统可能出现(①)问题.①抖动②不能共享③外零头④动态链接39.缓冲池管理中着重考虑地问题是(③).①选择缓冲区地大小②决定缓冲区地数量③实现进程访问缓冲池地同步④限制进程地数量40.设置当前目录地主要原因是(②).①节省主存空间②加快文件查找速度⑤节省辅存空间④便于打开文件41.建立多级目录(③).①便于文件地保护②便于关闭文件③解决文件地重名与共享④提高系统地效率42.各站点既可以作为客户去访问其它站点,又可以为其它站点服务,这种方式称为(③)①服务器模式②客户模式③对等模式④客户/服务器模式43.文件地顺序存取是(②).①按终端号依次存取②按文件地逻辑号逐一存取③按物理块号依次存取④按文件逻辑记录地大小逐一存取44.AND信号量机制是为了(③)①信号量地集中使用②解决结果地不可再现性问题③防止系统地不安全性④实现进程地相互制约45.使用修改位地目地是:(④)①实现LRU页面置换算法②实现NRU页面置换算法③在快表中检查页面是否进入④检查页面是否最近被写过46.通道程序是(②).①由一系列机器指令组成②由一系列通道指令组成③可以由高级语言编写④就是通道控制器47.在n个进程地分时系统中,其虚处理机地速度,约为单道系统地(②).①n倍② 1/n ③同等大小④ nq(注:q为是时间片)48.索引文件地主要优点是(①).①便于随机存取②提高辅存空间地利用率③便于顺序存取④减少开销49.分区地保护措施主要是(①).①界地址保护②程序状态保护③用户权限保护④存取控制表保护50.多道程序技术地实质就是(②).①程序地顺序执行②程序地并发执行③用户进程和系统进程地同时执行④多个处理机同时运行51.当输入输出操作正常结束时,操作系统将请求该操作地进程地状态设置成(③).①等待状态②运行状态③就绪状态④挂起状态52.关于作业调度地设计原则,不必考虑(①).①外设数据传输速度②平衡使用资源③公平④作业运行时间53.P操作(②).①只对二元信号量进行操作②可表示申请一个资源③可能唤醒一个进程④不能阻塞进程54.分页存储管理要求(②).①地址空间不必连续②地址空间必须连续③存储空间必须连续④作业地尺寸不能超过内存地容量55.段式存储管理比页式存储管理(①).①更便于共享②更有利于主存利用③更简单④更容易出现抖动现象56.通道程序是(②).①由一系列机器指令组成②由一系列通道指令组成③可以由高级语言编写④就是通道控制器57.缓冲池地概念是(④).①系统中同时存在单.双缓冲②系统中同时存在多个缓冲③系统中同时使用了各种缓冲技术④既能用于输入.又能用于输出地公用器58.在下列问题中,哪一个不是设备分配中应考虑地问题(④).①设备地固有属性②与设备地无关性③安全性④及时性59.死锁地检测是(③).①对系统资源分配加以限制,可以防止死锁②对系统资源分配加以限制,可以避免死锁③对系统资源分配不加以限制,定时地检测系统是否存在死锁加以解除④对系统资源分配不加以限制,采用静态分配方法,以避免死锁60.可变式分区存储管理策略常采用分配算法有(③).①优先数法②FCFS ③首次适应和最佳适应算法④循环扫描法61.某页式存储管理系统中,地址寄存器低9位表示页内位移量,则页面大小最多为(③)①1024字节②1024K字节③512字节④512K字节62.段式存储管理中,处理零头问题可采用(②)方法.①重定位②拼接③spooling技术④覆盖技术63.设置当前目录地主要原因是(②).①节省主存空间②加快文件查找速度③节省辅存空间④便于打开文件64.建立多级目录(③).①便于文件地保护②便于关闭文件③解决文件地重名与共享④提高系统地效率65.文件地顺序存取是(②).①按终端号依次存取②按文件地逻辑号逐一存取③按物理块号依次存取④按文件逻辑记录地大小逐一存取二. 判断题(每小题2分,共16分)1.(t )缓冲技术是以空间换时间,而且只能在设备使用均衡时起到平滑作用.2.( f )动态重定位与装入时动态链接在概念上是相同地.3.(t )在分时系统中采用虚拟存储技术可以改善响应时间.4.(t )在现代地分时系统中,逻辑处理机隐含了虚拟处理机地功能.5.(t )独享设备与共享设备地属性不同,其共享方式也不同.6.(t)采用AND型信号量机制是为了防止系统地不安全.7.(f )如果一个站点既可以作为客户,又可以作为服务器向其它站点提供服务,称为客户/服务器模式.8.(t )设备处理程序是I/O进程与设备控制器之间地通信程序.(正确:1.3.4.5.6.8 错误:2.7)1.()在段页式管理中,既有段表又有页表,就不能再使用快表了. 2.(t )实现虚拟存储器地关键技术是提供快速有效地自动地址变换地硬件机构和相应地软件算法.3.( f )一个操作系统地系统调用越多,系统地功能就越强,用户使用就越复杂.5.( t )作业调度程序本身作为一个进程在系统中执行,它是在系统初始化时被创建地.6.( t )响应比高者优先调度算法解决了长作业死等地问题. 7.( f )必须在分时系统地情况下,进程才能并发执行.8.( f )检测死锁地算法是按照死锁定理来实现地,必须在死锁发生时调用.9.( f )在引入线程地操作系统中,则把进程作为调度和分派地基本单位,而把线程作为资源拥有地基本单位.10.(t )虚拟存储器地最大容量是由主存和辅存地容量之和决定地.(正确:2.5.6.10 错误:1.3.7.8.9)1.( f )程序链接就是将程序调入内存.2.( f )线程是进程地实体,线程地控制块就是进程地控制块. 3.( f )命令解释程序是用于对选择地命令进行解释,以便用户了解其含义,而不是执行命令.4.( f )应用程序可通过终端窗口向用户展示系统所提供地各种服务及其需要用户输入地信息.5.(f )通过采用死锁定理地原则能够找到进程地安全序列. 6.( f )作业地周转时间包含有响应时间.7.( f )在存储器管理中,采用了重定位技术实现虚拟存储管理,因此虚拟存储空间可以无限大.8.(t )设备管理是通过一些数据结构来实现对其设备进行管理和控制地.9.( f)目录级安全管理,是为保护系统中地各种目录而设计地,它与用户权限无关.10.( t )控制器能接收CPU发来地命令,并去控制I/O设备工作.它是驱动程序所依赖地硬件之一.(正确:8.10 错误:1.2.3.4.5.6.7.9)1.( f )可变式分区采用紧凑技术,可构成大地空白存储区2.( f )多级反馈队列调度算法是属静态优先权调度算法.3.( f )静态链接需要共享目标模块地拷贝,而动态链接不需要共享目标模块地拷贝.4.( f )在页面置换算法中, 最近最久不用页面置换算法LRU与简单地Clock置换算法是相同地.5.( f )设备控制器是可编址设备.当用于控制多台设备时,则具有多地址.6.(t )缓冲技术是以空间换取时间,而且只能在设备使用不均衡时起到平滑作用.7.( t )由系统通过逻辑设备表实现逻辑设备到物理设备地映射.当更换物理设备时,用户地程序不用改,仅修改逻辑设备表8( f )采用多级目录不能实现不同用户可使用不同名字,来访问系统中地同一个共享文件.9.( t )用户对文件地访问:将由用户访问表.目录访问权限及文件属性三者地权限所确定.10.( f )请求页式管理系统中,既可以减少外零头,又可以消除内零头.(正确:6.7.9 错误:1.2.3.4.5.8.10)1.并行是指两个或多个事件在同一时间间隔内发生,而并发性是指两个或多个事件在同一时刻发生.( f )2.响应比高者优先调度算法解决了长作业死等地问( t )3.程序地顺序执行具有顺序性,封闭性和不可再现性.( f )4.进程控制一般是由操作系统地内核来实现.( t )5.在引入线程地操作系统中,则把进程作为调度和分派地基本单位,而把线程作为资源拥有地基本单位.( f )(正确:2.4 错误:1.3.5)。

最新计算机软件技术基础(第三版)习题答案

最新计算机软件技术基础(第三版)习题答案
微型计算机的硬件系统:主机、外存储器、输入设备、输出设备、微机的系统总线。
软件:是指计算机程序、方法、规则的文档以及在计算机上运行它时所必须的数据。
计算机软件一般分为系统软件和应用软件。
1.8软件技术发展的几个阶段各有什么特点?它与硬件的关系如何?
第一阶段:高级语言阶段
特点:这一时期,编译技术代表了整个软件技术,软件工作者追求的主要目的是设计和实现在控制结构和数据结构方面表现能力强的高级语言。但在这一时期内,编译系统主要是靠手工编制,自动化程度很低。
信息和数据的关系可以归结为:
1.信息是有一定含义的数据。
2.信息是经过加工(处理)后的数据。
3.信息是对决策有价值的数据。
1.2信息有哪些基本属性?
z信息的基本属性有:
1.事实性。
2.等级性。
3.可压缩性。
4.可扩散性。
5.可传输性。
6.共享性。
7.增值性和再生性。
8.转换性。
1.3计算机的主要特点是什么?
第一章
1.1什么是信息?信息与数据的区别和联系在何处?
信息定义之一:信息是现实世界中存在的客观实体、现象、关系进行描述的数据。
信息定义之二:信息是经过加工后并对实体的行为产生影响的数据。
与数据的区别和联系:
数据定义:数据是现实世界客观存在的实体或事物的属性值,即指人们听到的事实和看到的景象。
我们把这些数据收集起来,经过处理后,即得到人们需要的信息。
9
POS
1
4
7
10
12
13
14
15
16
NUM
3
3
3
2
1
1
1
1
4
2.27试说明树与二叉树有何不同?为何要将一般树转换为二叉树?

大学计算机软件技术基础考试技术复习题

大学计算机软件技术基础考试技术复习题

线性表采用链式存储时,结点的存储地址()A.必须是不连续的B.连续与否均可C.必须是连续的D.和头结点的存储地址相连续由两个栈共享一个向量空间的好处是:()A.减少存取时间,降低下溢发生的机率B.节省存储空间,降低上溢发生的机率C.减少存取时间,降低上溢发生的机率D.节省存储空间,降低下溢发生的机率假设以带行表的三元组表表示稀疏矩阵,则和下列行表对应的稀疏矩阵是()A.08067000000050400000--⎡⎣⎢⎢⎢⎢⎢⎢⎤⎦⎥⎥⎥⎥⎥⎥B.08067000504000000300--⎡⎣⎢⎢⎢⎢⎢⎢⎤⎦⎥⎥⎥⎥⎥⎥C.08060000020050400000--⎡⎣⎢⎢⎢⎢⎢⎢⎤⎦⎥⎥⎥⎥⎥⎥D.08060000700050400300--⎡⎣⎢⎢⎢⎢⎢⎢⎤⎦⎥⎥⎥⎥⎥⎥在一棵度为3的树中,度为3的结点个数为2,度为2 的结点个数为1,则度为0的结点个数为( )A.4 B.5 C.6 D.7一棵含18个结点的二叉树的高度至少为( C )A.3B.4C.5D.6已知二叉树的先序序列为ABDECF,中序序列为DBEAFC,则后序序列为( D ) A.DEBAFC B.DEFBCA C.DEBCFA D.DEBFCA无向图中一个顶点的度是指图中( B )A.通过该顶点的简单路径数B.与该顶点相邻接的顶点数C.通过该顶点的回路数D.与该顶点连通的顶点数设顺序存储的线性表共有123个元素,按分块查找的要求等分成3块。

若对索引表采用顺序查找来确定块,并在确定的块中进行顺序查找,则在查找概率相等的情况下,分块查找成功时的平均查找长度为( B )A.21B.23C.41D.62在含n个顶点和e条边的无向图的邻接矩阵中,零元素的个数为( )A.e B.2e C.n2-e D.n2-2e用某种排序方法对关键字序列(25,84,21,47,15,27,68,35,20)进行排序时,序列的变化情况如下:20,15,21,25,47,27,68,35,8415,20,21,25,35,27,47,68,8415,20,21,25,27,35,47,68,84则所采用的排序方法是()A.选择排序B.希尔排序C.归并排序D.快速排序数据的逻辑结构是从逻辑关系上描述数据,它与数据的存储(或存储结构)无关,是独立于计算机的。

软件技术基础模拟试题及参考答案

软件技术基础模拟试题及参考答案

软件技术基础模拟试题(第二十次省统考)一、是非判断题(正确选填A,错误选填B)(每小题1分,共10分)1、数据元素是数据的基本单位,数据项是数据的最小单位。

(对a)2、栈是特殊的线性表,须用一组地址连续的存储单元来存储其元素。

(错b)3、引入虚拟存储技术后,逻辑内存总容量是由地址总线的位置确定的。

(a对)4、编译程序是一种常用应用软件。

(b错)5、顺序文件和链接文件的长度都可以动态变化。

(b错)6、在文件系统中采用目录管理文件。

(a对)7、允许多用户在其终端上同时交互地使用计算机的操作系统称为实时系统。

(b 错)8、程序、数据、和进程控制块是构成一个进程的三要素。

(对a)9、黑盒测试时,既要考虑程序的内部逻辑结构又要考虑其外部特性。

(错b)10、软件的总体设计和详细设计都要用PAD图形工具。

(错b)(参考答案:1~10:ABABB ABABB)二、单项选择题:(每小题1分,共5分)1、允许用户把若干作业提交计算机系统集中处理的操作系统称为(D)。

A分时操作系统B实时操作系统C网络操作系统D批处理操作系统2、分配到必要资源并获得了处理机时的进程的状态称为(B)。

A就绪状态B执行状态C等待状态D阻塞状态3、利用通道技术可以在(C)之间直接交换数据。

A内存与CPU B CPU与外设C内存与外设D内存、CPU和外设三者4、以下的准则中哪个不是软件设计的准则(A)。

A编程语言选择准则B信息屏蔽准则C结构化和模块化准则D抽象准则5、有一数列:97657613294958经过一趟排序后得到:65971376294958请问使用的是何种排序方法?(C)A简单插入排序B冒泡排序C2路归并排序D快速排序(参考答案:DBCAC)软件技术基础模拟试题(第十九次省统考)一、是非判断题(正确选填A,错误选填B)(每小题1分,共10分)1、在目前,用于保证软件质量的主要手段是进行软件测试。

(对)2、使用DMA方式传送数据期间不需要CPU干预。

四川省计算机二级考试历年真题上机部份答案!

四川省计算机二级考试历年真题上机部份答案!

第三部分:笔试、机试答案笔试真题答案▶▶真题一第十九次等级考试第一部分软件技术基础一、是非判断题(正确选填A,错误选填B)(每小题1分,共10分)1~10:AAABA、BBAAB二、单项选择题:(每小题1分,共5分)1~5 :CBDDA第二部分C与C++语言程序设计一、单项选择题(每小题1分,共10分)1、B2、A3、D4、D5、A6、C7、D8、B9、A 10、B二、读程序题(每个选择3分,共45分)1、(1)D (2)B2、(1)C (2)D3、(1)A(2)D4、(1)C (2)C5、 B6、(1)C (2)D7、(1)B (2)C 8、B 9、D三、程序填空题(每空2分,共30分)1、①TotalSum(a,5) ②Total ③sum+=array[i]2、①ch=='1' ②power(2,i) ③val=val*x3、①s+n-1 ②*p1!= '\0' ③p2--4、①&num[i][j] ②num[i][j]!=num[j][i] ③flag==15、①while(!feof(fp) ) ②if(strcmp(str,string)==0) ③fopen(argv[1],"r")▶▶真题二第二十次等级考试第一部分软件技术基础一、是非判断题(正确选填A,错误选填B)(每小题1分,共10分)1~10:ABABB ABABB二、单项选择题:(每小题1分,共5分)1~5 :DACDC第二部分C与C++语言程序设计一、单项选择题(每小题1分,共10分)1、A2、B3、C4、C5、A6、D7、A8、C9、C 10、D二、读程序题(每个选择3分,共45分)1、(1)B (2)D2、(1)A(2)C3、(1)C (2)A(3)D4、(1)A(2)D5、 D6、(1)C (2)B7、(1)A(2)B 8、 B三、程序填空题(每空2分,共30分)1、①num=0 ②i < len-1 ③str++2、①symm(m)&&symm(m*m)&&symm(m*m*m)②i!=0 ③m=m*10+i%103、①head ②p->data ③p->next4、①(fp=fopen("data.txt", "r"))==NULL②ch=fgetc(fp) ③ch-'A'5、①while(*s++=*t++ ) ②*t='\0' ③else p=NULL▶▶真题三第二十一次等级考试第一部分软件技术基础一、是非判断题(正确选填A,错误选填B)(每小题1分,共10分)1~10:BBABB ABBAB二、单项选择题:(每小题1分,共5分)1~5 :CCDDB第二部分C与C++语言程序设计一、单项选择题(每小题1分,共10分)1、C2、B3、B4、B5、C6、A7、A8、C9、D 10、D二、读程序题(每个选择3分,共45分)1、D2、A3、A4、B5、B6、C7 、(1)C (2)B 8、(1)A(2)B 9、(1)C (2)D10、(1)D (2)A(3)D三、程序填空题(每空2分,共30分)1、①struct student *next ②p2->next=p1 ③p=p->next2、①q=p ②p>str ③*p=max3、①aver+=score[i] ②below[k]=score[i] ③fun(score,9,below)4、①i==j ②j=2 ③j>=05、①"wb" ②&em ③ 1▶▶真题四第二十二次等级考试第一部分软件技术基础一、是非判断题(正确选填A,错误选填B)(每小题1分,共10分)1~10:AABBA BBBAA二、单项选择题:(每小题1分,共5分)1~5 :DCDCA第二部分C与C++语言程序设计一、单项选择题(每小题1分,共10分)1、B2、A3、B4、A5、D6、C7、D8、C9、D 10、C二、读程序题(每个选择3分,共45分)1、D2、(1)A(2)C3、(1)A(2)D4、C5、A6、B7、B 8、(1)D (2)A9、(1)C (2)B10、(1)B (2)D三、程序填空题(每空2分,共30分)1、①p[i]>p[j] ②fscanf(fp,"%d",&a[i] ) ③sort(a,10)2、①func(n) ②long m ③func(m/10)3、①(bott+top)/2 ②top=mid-1 ③bott>top4、①str1[i]!= '\0'&&str2[i]!= '\0'②strlen(str1)>strlen(str2) ③strcat(str3,p2+i )5、①k>0 ②k/10 ③continue▶▶真题五第二十三次等级考试第一部分软件技术基础一、是非判断题(每小题1分,共10分)1~10:AABAB ABBBB二、选择题(每小题1分,共5分)1~5 :CDADA第二部分C与C++语言程序设计一、单项选择题(每小题1分,共10分)1、B2、A3、A4、D5、B6、A7、C8、A/B9、D 10、C二、读程序回答问题(每个选择3分,共45分)1、B2、A3、D4、B B5、D A6、B A7、D8、C C9、A C 10、C三、程序填空( 每空2分,共30分)1、①n%base ②c[i] ③b[d]2、①j/10 ②ch[0]==ch[4] && ch[1]==ch[3] ③i3、①i%3==0&&i%7!=0 ②p[num++]=i ③fun ( M,a,&n )4、①s,t ②*(p1+i)==*p2 ③p1+i ,p1+i+15、①fopen ("stu.txt","r+" ) ②fp,"%f",&y ③fprintf ( fp,"%f",x )▶▶真题六第二十四次等级考试第一部分软件技术基础一、是非判断题(每小题1分,共10分)1~10:BABAB BABAB二、选择题(每小题1分,共5分)1~5 :BDBDB第二部分C与C++语言程序设计一、单项选择题(每小题1分,共10分)1、C2、B3、A4、A5、D6、C7、C8、B9、D 10、B二、读程序回答问题(每个选择3分,共45分)1、D2、B D3、A4、A B5、A6、C7、C D8、D B9、C 10、C B三、程序填空( 每空2分,共30分)1、①int *p 或int p[] ②p[j+1]=p[j] ③insert(a,wz,x)2、①int i ②i<=y ③return z3、①x>=0 ②x<min ③&x4、①i-1 ②a[j+1]=a[j] ③a[j+1]=t5、①FILE *f ②sizeof(stract rec) ③r.num, r.total▶▶真题七第二十五次等级考试第一部分软件技术基础一、是非判断题(每小题1分,共10分)1~10:BAAAB ABAAB二、选择题(每小题1分,共5分)1~5 :ADDAC第二部分 C与C++语言程序设计一、单项选择题(每小题1分,共10分)1、A2、D3、B4、C5、B6、A7、D8、B9、D 10、A二、读程序回答问题(每个选择3分,共45分)1、C2、A3、B C4、A C5、D D6、A C7、A D8、B D9、B三、程序填空( 每空2分,共30分 )1、① a=a*x ② b=b*i ③ s=sum(x,n)2、① s<t ② s++ ③ t--3、① filename ② c-…a‟③ ch+i4、① *max=i ② *min=i ③ fun(a,10,&max,&min)5、① c[k]=a[i++] ② c[k]=b[j++] ③ *(b+j)!=‟\0‟▶▶真题八第二十六次等级考试第一部分软件技术基础一、是非判断题(每小题1分,共10分)1~10:BABAB BBABB二、选择题(每小题1分,共5分)1~5 :BCCCA第二部分C与C++语言程序设计一、单项选择题(每小题1分,共10分)1、A2、B3、C4、B5、D6、C7、A8、D9、C 10、B二、读程序回答问题(每个选择3分,共45分)1、A C2、D3、B4、A B5、A6、B C7、D C8、D9、A D 10、B三、程序填空( 每空2分,共30分)1、①char ch ②“r” ③ch2、①p=i ②i>=p ③a[p]=x3、①word++ ②max<word ③word=04、①a[k][i] ②*sum ③x,&s5、①a[k] ②a[k] ③“%4\n”▶▶真题九第二十七次等级考试第一部分软件技术基础一、是非判断题(正确选填A,错误选填B)(每小题1分,共10分)1~10:AAAAA ABBBA二、单项选择题:(每小题1分,共5分)1~5 :ADBCA第二部分C与C++语言程序设计一、单项选择题(每小题1分,共10分)1、A2、B3、D4、D5、C6、C7、B8、D9、A 10、D二、读程序题(每个选择3分,共45分)1、 B2、 A3、 A4、C5、 C6、 B7、 D8、 D A B9、B D 10、C A11、C三、程序填空题(每空2分,共30分)1、①char m ②i<=j ③str[j-1]2、①argv[1] ②ch=fgetc(fp2) ③fputc(ch,fp1)3、①i+2 ②a[j]!=0&&a[i]!=0&&a[j]%a[i]==0 ③count%10==04、①-sign ②num* ③%ld5、①i=0 ②s[i]!=‟\0‟③i%2==0▶▶真题十第二十八次等级考试第一部分软件技术基础一、是非判断题(正确选填A,错误选填B)(每小题1分,共10分)1~10:AABAB AABBB二、单项选择题:(每小题1分,共5分)1~5 :DBAAC第二部分C与C++语言程序设计一、单项选择题(每小题1分,共10分)1、D2、B3、A4、C5、B6、D7、C8、A9、B 10、D二、读程序题(每个选择3分,共45分)1、B2、A C3、D4、A5、 B6、A7、A C8、D9、B 10、B C11、C 12、D三、程序填空题(每空2分,共30分)1、①*(s+i)或*(s+i)!='\0' ②return cnt; ③fun(str,ch)2、①-1 ②(2*i+1) ③*s=t;3、①b[i]=0 ②b[i]+ ③x[i][j]4、①i++ ②line=j ③fclose(fp)5、①k++ ② 2 ③k-1▶▶真题十一第二十九次等级考试第一部分软件技术基础一、是非判断题(正确选填A,错误选填B)(每小题1分,共10分)1~10:BAAAB ABABA二、单项选择题:(每小题1分,共5分)1~5 :AABDC第二部分C与C++语言程序设计一、单项选择题(每小题1分,共10分)1、C2、B3、A4、D5、B6、C7、B8、D9、A 10、D二、读程序题(每个选择3分,共45分)1、(1)D (2)C2、(1)B (2)A3、(1)C (2)D4、A5、 B6、(1)D (2)C7、C 8、(1)B (2)C 9、B 10、A三、程序填空题(每空2分,共30分)1、①a[r][c] ②*row=r ③return a[r][c]2、①s+x/y ②x ③x+y3、①“score.dat” ②scanf(“%f”,&score) ③fclose(fp)4、①char *sp ②strlen(sp) < strlen(sq[i]) ③fun(str)5、①n=0 ②a[j]=0 ③count<25▶▶真题十二第三十次等级考试第一部分软件技术基础一、是非判断题(正确选填A,错误选填B)(每小题1分,共10分)1~10:二、单项选择题:(每小题1分,共5分)1~5 :第二部分C与C++语言程序设计一、单项选择题(每小题1分,共10分)1、D2、C3、B4、B5、A6、D7、B8、A9、D 10、C二、读程序题(每个选择3分,共45分)1、A C2、C A3、B B4、D B5、D B6、B7、A A8、C C三、程序填空题(每空2分,共30分)1、①n%base ②i>=0 ③a[d]2、①*d ②word ③result3、①3 ②"r" ③fgetc(fp1)4、①struct p t[100] ②&t[i].code ③t[i].code5、①n%i ②return 1 ③fun ( a[i] )▶▶真题十三第三十一次等级考试第一部分软件技术基础一、是非判断题(每小题1分,共10分)1~10:ABABB ABBAA二、选择题(每小题1分,共5分)1~5 :CABDA第二部分 C与C++语言程序设计一、单项选择题 (每小题1分,共10分)1、A2、D3、B4、B5、D6、D7、D8、C9、B 10、B二、读程序题(每个选择3分,共45分)1、D C2、D3、D4、B5、D6、C A7、C B8、D A9、D C 10、C三、程序填空题(每空2分,共30分)1、① i ② w ③"\n"2、① 5 ② m=m*10+t%10 ③ t=t/103、① i+=3 ② j+=3 ③ a[i]>a[j]4、① int a[] ② a[i]%j ③ a[k]5、① i ② t*k ③ -k机试真题答案▶▶真题一一、程序调试题(文件名为test1-1.c)( 40 分)#include <stdio.h>#include <string.h>#include <stdlib.h>#define N 80void main(){ char str1[N],str2[N];int i,j,locat[10];int fun(char *,char *,int *);FILE *fp;if((fp=fopen("test1-1.dat","r"))=NULL) /* 改为:== */{ printf("Cannot open the file.\n");exit(0);}fgets(str1,fp); /* 改为:str1,N-1,fp */fgets(str2,N-1,fp);printf("str1:%s\nstr2:%s\n",str1,str2);fclose(fp);fun(str1,str2,locat);/* 改为:i=fun(str1,str2,locat); */ printf("arisen times: %d\n,start place:",i);for(j=0;j<i;j++)printf("%d, ",locat[j]);printf("\n");}int fun(char *p,char *q,int locat[]){ int len,i=0,posit=0;char *str;str=q;len=strlen(q);do{ if(*p=*q) /* 改为:*p != *q */{ p++;posit++;}else{while((*q!='\0')||(*q==*p)) /* 改为:&& */{ q++;p++;posit++;}if(*q=='\0'){locat[i]=posit-len;i++;}}q=str;}while(*p!='\0');return i;}评分标准:每改对一处得8分二、编程题(程序文件取名为test1-2.c)(60分)评分标准:1.fun函数编写40分:2. main函数编写20分:1)函数定义、形参书写正确(10分) 1)正确定义变量,并能正确的输出(10分) 2)算法正确(20分) 2)能正确调用fun函数(10分)3)返回值正确(10分)参考程序:# include <stdio.h>int fun(int *a){int i,j=0,qw,bw,sw,gw,s,t;for(i=1000;i<=9999;i++){qw=i/1000;bw=i/100%10;sw=i/10%10;gw=i%10;s=qw*10+sw;t=bw*10+gw;if( (s==5*t) &&(bw!=0) ){a[j]=i;j++;}}return j;}void main(){int a[100],i,j;j=fun(a);for(i=0;i<j;i++){printf("%6d",a[i]);if((i+1)%5==0)printf("\n");}}▶▶真题二一、程序调试题(文件名为test2-1.c)( 40 分)#include <stdio.h>#include <string.h>#include <stdlib.h>#define N 5int fun(char s) /* 改为:*s */{ int i,j;j=strlen(s);for(i=0,j--;i<j;i++,j++) /* 改为:j--*/if(s[i]=s[j]) return 0; /* 改为:!= */return 1;}void main( ){ char s[20];FILE *fp;int i=0,j=0;if((*fp=fopen("test2-1.dat","r"))==NULL) /* 改为:fp */{ printf("Cannot open the file.\n");exit(0);}for(i=0;i<N;i++){ if(fun()) /* 改为:fun(s) */{printf("%s\n",s);j++;}}printf("\nnumber=%d\n",j);fclose(fp);}评分标准:每改对一处得8分二、编程题(程序文件取名为test2-2.c)(60分)评分标准:1.fun函数编写30分:2. main函数编写30分:1)函数定义、形参书写正确(10分) 1)数组定义及初始化正确(10分) 2)算法正确(20分) 2)能正确调用fun函数(5分)3)能正确输出(15分) 参考程序:# include <stdio.h># define N 4void fun(int a[][N]){int i,j;for(i=0;i<N;i++)for(j=0;j<i;j++)if(a[i][j]>a[j][i])a[j][i]=a[i][j];}void main(){int d[N][N]={{0,1,2,3},{7,6,4,5},{11,16,9,10},{15,22,33,8}};int i,j;for(i=0;i<N;i++){ for(j=0;j<N;j++)printf("%6d",d[i][j]);printf("\n");}fun(d);for(i=0;i<N;i++){ printf("\n");for(j=0;j<N;j++)if(j>=i)printf("%6d",d[i][j]);elseprintf("%6c",' ');}}▶▶真题三一、程序调试题(文件名为test3-1.c)( 40 分)#define N 20#include <stdlib.h>#include <stdio.h>void fun(int *a) /* 改为:int */{ int i,cnt=0;for(i=0;i<N;i++)if(a[i]>0) cnt++; /* 改为:<*/return cnt;}void main( ){ FILE *fp;int a[],i,cnt; /* 改为:a[N] */if((fp=fopen("test3-1.dat","r"))==NULL){ printf("Cannot open the file.\n");exit(0);}for(i=0;i<N;i++)fscanf(fp,"%d",a[i]); /* 改为:a+i */fclose(fp);fun(a); /* 改为:cnt=fun(a) */printf("positive = %d\n",N-cnt);printf("negative = %d\n",cnt);}评分标准:每改对一处得8分二、编程题(程序文件取名为test3-2.c)(60分)评分标准:1.fun函数编写40分:2.main函数编写20分:1) 函数定义、形参书写正确10分1) 变量定义及输入正确10分2) 算法正确30分2) 能正确调用fun函数5分3) 输出结果正确5分参考程序:# define N 10# include <stdio.h>void fun(int a[],int where,int amount){int *p1,*p2,temp;p1=&a[where-1];p2=&a[where-2+amount];while( p1 < &a[where-1]+amount/2 ){temp=*p1;*p1=*p2;*p2=temp;p1++;p2--;}}void main(){int num[N],where,amount,i;printf("Input 10 number:\n");for(i=0;i<N;i++)scanf("%d",&num[i]);printf("\n");printf("How many numbers do you want to sort:");scanf("%d",&amount);printf("\nWhere do you want to start:");scanf("%d",&where);printf("\n");fun(num,where,amount);printf("\nresorted array as follow:\n");for(i=0;i<N;i++)printf("%d,",num[i]);printf("\n");}▶▶真题四一、程序调试题(文件名为test4-1.c)( 40 分)#define N 20#include <stdlib.h>#include <stdio.h>int fun(int *a,int *even,int *odd) /* 改为:void*/{int i,cnt=0;for(i=0;i<N;i++)if(a[j]%2==0) /* 改为:a[i]*/*even++; /* 改为:(*even)*/else(*odd)++;}void main( ){FILE *fp;int a[N],i,cnt,even=0,odd=0;if((fp=fopen("test4-1.dat","r"))==NULL){printf("Cannot open the file.\n");exit(0);}for(i=0;i<N;i++)fscanf("%d",a+i); /* 改为:fp,"%d",a+i */fclose(fp);fun(a,&even,odd); /* 改为:&odd */printf("even = %d\n",even);printf("odd = %d\n",odd);}评分标准:每改对一处得8分二、编程题(程序文件取名为test4-2.c)(60分)评分标准:1.fun函数编写40分:2.main函数编写20分:1) 函数定义、形参书写正确10分1) 变量定义及输入正确10分2) 算法正确30分2) 能正确调用fun函数5分3) 输出结果正确5分参考程序:# include <stdio.h># define N 5void main(){int i,a[N],b[N],cnt=0;int fun(int a[],int b[]);printf("Enter %d number: ",N);for(i=0;i<N;i++)scanf("%d",&a[i]);cnt=fun(a,b);printf("cnt=%d\n",cnt);for(i=0;i<cnt;i++)printf("%6d",b[i]);}int fun(int a[],int b[]){int bb[4],cnt=0,i,j,k,flag;for(i=0;i<N;i++){bb[0]=a[i]/1000;bb[1]=a[i]/100%10;bb[2]=a[i]/10%10;bb[3]=a[i]%10;for(j=0;j<4;j++){if(bb[j]%2==0)flag=1;else{flag=0;break;}}if(flag==1)b[cnt++]=a[i];}return cnt;}▶▶真题五一、程序调试题(文件名为test5-1.c)( 40 分)#define N 80#include <stdlib.h>#include <stdio.h>#include <string.h>void fun(char str[],char *cap,char *lower){ int i=0,j=0,k=0;while(str[j]!='\0') /* 改为:str[i] */{ if(str[i]>='a'&str[i]<='z') /* 改为:&& */lower[j]=str[i]; /* 改为:j++ */else if(str[i]>='A'&&str[i]<='Z')cap[k++]=str[i];i++;}lower[j]='\0';cap[k]='\0';}void main( ){ FILE *fp;int str[N],cap[N],lower[N];if((fp=fopen("test5-1.dat","r"))==NULL){ printf("Cannot open the file.\n");exit(0);}fgets(str,0,fp); /* 改为:N */fclose(fp);fun(str,cap); /* 改为:str,cap,lower */printf(" %d capitalization : %s\n",strlen(cap),cap);printf(" %d lowercase : %s\n",strlen(lower),lower);}评分标准:每改对一处得8分二、编程题(程序文件取名为test5-2.c)(60分)评分标准:1.fun函数编写40分:2.main函数编写20分:1) 函数定义、形参书写正确10分1) 变量定义及输入正确10分2) 算法正确20分2) 能正确调用fun函数5分3) 返回正确10分3)输出结果正确5分参考程序:# include <stdio.h># define M 3# define N 4void main(){int matrix[3][4];int i,j,n;int fun(int a[M][N]);printf("Please input the elements of the matrix(3*4) row by row :\n");for(i=0;i<M;i++)for(j=0;j<N;j++)scanf("%d",&matrix[i][j]);n=fun(matrix);printf("result=%d\n", n);}int fun(int a[][N]){int i,j,max[M],min;for(i=0;i<M;i++){max[i]=a[i][0];for(j=1;j<N;j++)if(max[i]<a[i][j])max[i]=a[i][j];}min=max[0];for(i=1;i<M;i++)if(min>max[i])min=max[i];return(min);}▶▶真题六一、程序调试题(文件名为test6-1.c)( 40 分)#define N 10void printf(int n,int fac[],int x) /* 改为:myprintf */ {int j;printf("%3d its factors: ", x);for(j=0;j<n;j++)printf("%d ", fac[j]);printf("\n");}void find( int a[] , int fac[] ){int i, count,s,j;for(i=0;i<N;i++){count=0;for(j=0;j<a[i];j++) /* 改为:j=1 */if(a[i]%j==0)fac[count++]=j;s=0;for(j=0;j<count;j++)s=fac[j]; /* 改为:+= */if(s==a[i])myprintf(count,fac,s);}}void main( ){int i,a[N],fac[N];FILE *fp;fp=fopen("test6-1.dat","r");if(fp=NULL) /* 改为:== */{printf("Can not open file!\n");exit(0);}for(i=0;i<N;i++)fscanf(fp,"%d",&a[i]);fclose(fp);find(a);}评分标准:每改对一处得8分二、编程题(程序文件取名为test6-2.c)(60分)评分标准:1.fun函数编写40分:2.main函数编写20分:1) 函数定义、形参书写正确10分1) 变量定义及输入输出正确15分2) 算法正确20分2) 能正确调用fun函数5分3) 返回正确10分参考程序:# include <stdio.h># define N 10void main(){int x[N],i,n;int fun(int *);for(i=0;i<N;i++)scanf("%d",x+i);n=fun(x);printf("index=%d,max=%d\n",n,x[n]);}int fun(int x[]) {int i,max,k=0; max=x[0];for(i=1;i<N;i++)if(x[i]>max){max=x[i];k=i;}return k;}。

《计算机软件技术基础》课后题答案

《计算机软件技术基础》课后题答案

数据结构习题答案第一节概论一、选择题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. 软件项目管理工具主要包括______、______、______和______。

4-计算机基础计算机软件练习题(参考答案)

4-计算机基础计算机软件练习题(参考答案)

判断题╳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.线性表的链式储存结构与次序储存结构对比优点是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中。

电子科技大学14秋《软件技术基础》在线作业1答案

电子科技大学14秋《软件技术基础》在线作业1答案

14秋《软件技术基础》在线作业1
一,单选题
1. 下列操作中不是数据操作的是()。

A. 删除
B. 排序
C. 构造
D. 查找
?
正确答案:C
2. C语言的基本数据类型不包括
A. double
B. int
C. float
D. char
?
正确答案:A
3. ()不是操作系统关心的主要问题。

A. 管理计算机裸机
B. 设计、提供用户程序与计算机硬件系统的界面
C. 管理计算机系统资源
D. 高级程序设计语言的编译器
?
正确答案:D
4. 存储器的管理不能完成下述()功能。

A. 虚拟存储
B. 地址变换与重定位
C. 内存分配与回收
D. 进程调度
?
正确答案:D
5. 可以采取下列哪些预防措施防止死锁的产生()。

A. 采用资源静态分配策略,破坏"部分分配"条件
B. 允许进程剥夺使用其他进程占有的资源,从而破坏"不可剥夺"条件
C. 采用资源有序分配法,破坏"环路"条件
D. 采用虚拟设备共享法
?
正确答案:D。

《计算机软件技术基础》课后题概论

《计算机软件技术基础》课后题概论

数据结构习题答案第一节概论一、选择题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分,共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.本课程以( )和( )为基本内容。

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. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

计算机软件技术基础(2)
要求:
1. 独立完成,作答时要写明题型、题号;
2. 作答方式:手写作答或电脑录入,使用A4格式白纸;
3. 提交方式:以下两种方式任选其一,
1)手写作答的同学可以将作业以图片形式打包压缩上传;
2)提交电子文档的同学可以将作业以word文档格式上传;
4. 上传文件命名为“中心-学号-姓名-科目.rar ”或“中心-学号-姓名-科
目.doc ”;
5. 文件容量大小:不得超过10MB
请在以下五组题目中任选一组作答,满分100分。

第一组:
一、程序编写题(每小题25分,共100分)
(一)
在编写的程序中,要求:
1)用fun函数完成:求n以内(不包括n)能被3整除的所有自然数之和,并把结果作为函数值返回。

2)在main函数中输入一个自然数,调用fun函数,输出fun函数返回的结果。

#in elude <>
int fun (i nt n)
{
int sum,k;
sum=0;
for(k=1;k< n;k++)
if(k%3==0) sum=sum+k;
return sum;
}
void mai n()
{
int n,s;
printf(" 输入自然数n:\n");
sea nf("%d",&n);
s=fu n(n);
printf("\nn 以内(不包括n)能被3整除的所有自然数之和为%d",s);
(二)
请编写函数int fun(char *str) ,该函数的功能是:判断字符串是否为回文若是则函数返
回1主函数中输出yes,否则返回0,主函数中输出no。

回文是指顺读和倒读都是一样的字符串。

#include <>
int fun(char *str)
{
int i=0,j=0;
while(str[i]!='\0') i++;
i--;
for(;j<=i;i--,j++)
{
if(str[i]!=str[j]) break;
}
if(j<=i)
return 0;
else
return 1;
}
void main()
{
char a[100];
int flat=0;
printf(" 请输入字符串:\n");
gets(a);
flat=fun(a);
switch(flat){
case 1:printf("yes\n"); break;
case 0:printf("no\n"); break;
}
}
(三)
设A、B是两个线性表,其表中元素递增有序,长度分别为m和n。

试写一算法分别以顺序存储和链式存储将A和B归并成一个仍按元素值递增有序的线性表Co
1. 顺序存储
SeqList *Seqmerge(SeqList A,SeqList B,SeqList *C)
{
i=0;j=0;k=0; 式存储
void MergeList_L (Listlink &La,Listlink &Lb,Listlink &Lc )
{
Listlink *pa,*pb,*pc; pa=La->next;pb=Lb->next;
Lc=pc=La; 编写程序,计算并输出 X 3+X 5
4. 数学中,阶乘函数的递归定义为:
若 n=0, n!= 1;
若 n>0, n!=n*(n-1)!;
编写程序,计算并输出 n!
(一)
设指针 la 和 lb 分别指向两个不带头结点的单链表的首结点,设计从表 la 中删除第 i 个元 素起共 len 个元素,并将这些元素插入到 lb 中第 j 个结点之前的算法。

(二)
1. 编写递归函数求 1+2+3+,, +m 的值。

2. 设指针 la 和 lb 分别指向两个不带头结点的单链表的首结点,设计从表
la 中删除第 i 个
元素起共 len 个元素,并将这些元素插入到 lb 中第 j 个结点之前的算法。

第三组:
,其功能是计算并输出 100 以内的偶数之和 ,它的功能是:计算
并输出 1 00以内的所有素数 5!+6!
(X 3)2 并编写一个按指数值递增次序输入所产生的多项式链表的 过程 (三) 1. 单链表 L 是一个递减有序表,试写一高效算法,删除表中值大
于 min 且小于 max 的 结点 ( 若表中有这样的结点 ) ,同时释放被删结点空间,这里
min 和 max 是两个给定 的参数。

2. 编写一个算法将一个头结点指针为 pa 的单链表A 分解成两个单链表 A 和B,其头结
点指针分别为pa 和pb ,使得A 链表中含有原链表 A 中序号为奇数的元素,
而B 链表 中含有原链表A 中序号为偶数的元素,且保持原来的相对顺序。

(四)
已知由单链表表示的线性表中,含有三类字符的数据元素 ( 如:字母字符、数字字符和其他 字符 ),试编写算法构造三个以循环链表表示的线性表, 使得每个表中只含有同一类的字符, 且利用原表中的结点空间作为这三个表的结点空间,头结点可另辟空间。

第四组:
一、 程序编写题(每小题 25 分,共 100分)
(一)
25 分,共 100 分)
一、 程序编写题(每小题
(一)
1. 2. 3. 4. (二) 编写函数 void fun () 编写函数 void fun () 编写程序,计算并输出
编写程序,计算并输出
给出用单链表存储多项式的结构,
1.试用顺序表作为存储结构,实现将线性表(a0 ,a1,a2 ,,an-1)就地逆置的操作,所谓“就地”是指辅助空间为O(1)。

2. 设顺序表L是一个递增(允许有相同的值)有序表,试写一算法将x插入L中,并使L仍为一
个有序表。

(二)根据上题的单链表存储多项式的结构,编写一个过程实现两个多项式相加的运算。

(三)
假设以两个元素值递增有序排列的线性表A、B分别表示两个集合,要求另辟空间构造一个线性表C,其元素为两集合的交集,且表C中的元素值也递增有序排列。

用顺序表实现并写出C的算法。

(四)
己知A、B和C为三个递增有序的线性表,现要求对A表进行如下操作:删去那些既在B表中出现又在C表中出现的元素。

试对顺序表编写实现上述操作的算法(注:题中未特别指明同一表中的元素值各不相同)。

第五组:
一、程序编写题(每小题25 分,共100分)
(一)
编程实现ret ()函数,函数功能是:将一维数组 a (有n个元素,且任何元素均不为零)分拆为两个数组b和c,使a中大于零的元素存放在b中,小于零的元素存放在c中。

(二)
1. 编写函数double fun (intn),它的功能是:计算并输出下列级数和:
s=1/1*2+1/2*3+ …+1/ n(n+1)
2. 请编写函数void fun (char *s,char t[]),其功能是:将s所指字符串中除了下标为偶数、同时ascii 值也为偶数的字符外,其余的全都删除;串中剩余字符所形成的一个新串放在t 所指的一个数组中。

(三)
设计一段程序:函数difference(A,B)用于求两集合之差C=A-B,即当且仅当e是A中的一个元素,且不是B中的元素时,e是C中的一个元素。

集合用有序链表实现,用一个空链表表示一个空集合,表示非空集合的链表根据元素之值按递增排列,执行C=A-B之后,表示集
合A和B的链表不变,若结果集合C非空,则表示它的链表应根据元素之值按递增序排列。

函数append()用于在链表中添加结点。

(四)
具有n 个结点的完全二叉树,已经顺序存储在一维数组A[1..n] 中,设计一个算法将
A中顺序存储变为二叉链表存储的完全二叉树。

相关文档
最新文档