《计算机软件基础》试卷及答案
- 格式:doc
- 大小:68.50 KB
- 文档页数:6
习题一1.什么是数据结构,数据的逻辑结构,数据的存储结构?数据结构对算法有什么影响?请举例说明。
2.数据结构的存储方式主要有哪两种?它们之间的本质区别是什么?3.设n为正整数, 分析下列各程序段中加下划线的语句的执行次数。
(1) for (int i = 1; i <= n; i++)for (int j = 1; j <= n; j++) {c[i][j] = 0.0;for (int k = 1; k <= n; k++)c[i][j] = c[i][j] + a[i][k] * b[k][j];}(2) x = 0; y = 0;for (int i = 1; i <= n; i++)for (int j = 1; j <= i; j++)for (int k = 1; k <= j; k++)x = x + y;(3) int i = 1, j = 1;while (i<=n && j<=n) {i = i + 1; j = j + i;}(4)*int i =1;do{for (int j = 1; j <= n; j++)i = i + j;}while(i<100 + n);4.试编写一个函数计算n!*2n的值,结果存放于数组A[arraySize]的第n个数组元素中,0 ≤n ≤arraySize。
若设计算机中允许的整数的最大值为maxInt,则当n>arraySize或者对于某一个k (0 ≤ k ≤ n),使得k!*2k > maxInt时,应按出错处理。
可有如下三种不同的出错处理方式:(1) 用printf显示错误信息及exit(1)语句来终止执行并报告错误;(2) 用返回整数函数值0, 1来实现算法,以区别是正常返回还是错误返回;(3) 在函数的参数表设置一个引用型的整型变量来区别是正常返回还是某种错误返回。
计算机软考试题及答案一、单选题(每题1分,共10分)1. 在计算机系统中,CPU指的是:A. 中央处理器B. 存储器C. 输入设备D. 输出设备答案:A2. 下列选项中,不属于计算机硬件的是:A. 键盘B. 鼠标C. 操作系统D. 显示器答案:C3. 在计算机中,1KB等于:A. 1024字节B. 1000字节C. 1024字D. 1000字答案:A4. 计算机软件分为系统软件和应用软件,其中Windows操作系统属于:A. 系统软件B. 应用软件C. 编程软件D. 办公软件答案:A5. 下列关于计算机网络的描述中,错误的是:A. 计算机网络是由多个计算机通过通信线路连接起来的B. 计算机网络可以实现资源共享C. 计算机网络只能用于数据传输D. 计算机网络可以提高工作效率答案:C6. 在计算机系统中,RAM指的是:A. 随机存取存储器B. 只读存储器C. 可编程只读存储器D. 硬盘存储器答案:A7. 计算机病毒是一种:A. 计算机硬件B. 计算机软件C. 计算机程序D. 计算机操作系统答案:C8. 在计算机系统中,用于存储数据和程序的设备是:A. CPUB. 内存C. 硬盘D. 显卡答案:C9. 下列选项中,不属于计算机输入设备的是:A. 键盘B. 鼠标C. 打印机D. 扫描仪答案:C10. 计算机的工作原理是基于:A. 冯·诺依曼体系结构B. 图灵机理论C. 布尔代数D. 以上都是答案:D二、多选题(每题2分,共10分)1. 计算机系统由以下哪些部分组成?A. 硬件系统B. 软件系统C. 网络系统D. 电源系统答案:A B2. 计算机软件包括以下哪些类型?A. 系统软件B. 应用软件C. 嵌入式软件D. 办公软件答案:A B C3. 计算机网络的功能包括:A. 数据通信B. 资源共享C. 分布式处理D. 提高计算机性能答案:A B C4. 计算机存储设备包括:A. 硬盘B. 光盘C. 固态硬盘D. 软盘答案:A C5. 计算机病毒的特点包括:A. 传染性B. 破坏性C. 隐蔽性D. 自我复制能力答案:A B C D三、判断题(每题1分,共10分)1. 计算机的CPU是计算机的核心部件,负责执行程序中的指令。
一、单选题1、计算机的功能不断增强,应用不断扩展,计算机系统也变得越来越复杂。
一个完整的计算机系统由________两大部分组成。
A.硬件系统和操作系统B.中央处理器和系统软件C.主机和外部设备D.硬件系统和软件系统正确答案:D2、在PC机中,CPU芯片是通过________安装在主板上的。
A.AT总线槽B.CPU插座C.PCI(PCI-E)总线槽D.I/O接口正确答案:B3、计算机硬件系统中指挥、控制计算机工作的核心部件是________。
A.CPUB.输入设备C.存储器D.输出设备正确答案:A4、使用Pentium 4作为CPU的PC机中,CPU访问主存储器是通过_________进行的。
A.CPU总线(前端总线)B总线C.PCI总线D.I/O总线正确答案:A5、PC计算机中BIOS是________。
A.一种总线B.一种操作系统C.基本输入输出系统D.一种应用软件正确答案:C6、PC机主板上所能安装的主存储器最大容量、速度及可使用的内存条类型主要取决于________。
A.I/O总线B.CPU主频C.南桥芯片D.北桥芯片正确答案:D7、PC机正在工作时,若按下主机箱上的Reset(复位)按钮,PC机将立即停止当前工作,转去重新启动计算机,首先是执行________程序。
A.加电自检B.CMOS设置C.基本外围设备的驱动D.系统主引导记录的装入正确答案:A8、键盘、显示器和硬盘等常用外围设备在操作系统启动时都需要参与工作,所以它们的基本驱动程序都必须预先存放在________中。
A.CPUB.硬盘C.BIOS ROMD.RAM正确答案:C9、几年前许多显卡使用AGP接口,但目前越来越多的显卡开始采用性能更好的________接口。
A.PCIBC.PCI-E x1D.PCI-E x16正确答案:D10、刷新频率是图像在屏幕上更新的速度,为了保护眼睛,最好将刷新频率调到______。
A.75HzB.85HzC.70HzD.60Hz正确答案:B11、现在激光打印机与主机连接多半使用的是______接口,而以前则大多使用并行接口。
数据结构习题答案第一节概论一、选择题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分,出现两处或以上错误本行得。
2018年4月自考计算机软件基础(一)试卷第一部分选择题一、单项选择题(本大题共l5小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的。
请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.下列与k=n++完全等价的表达式是 ( )A.k= ++ n B.k+ = n+lC.k=n,n=n+1 D.n=n+1,k=n2.已知int a=5,b=3,*P=&b,*q=&a;下列赋值语句中与b=a;等价的语句是 ( )A.*P=*q; B.P=q; C.*P=&q; D.P=*b;3.已知C语言函数fun()的定义形式为void fun(char ch,float x){...} 则正确调用函数fun()的语句是 ( )A.fun(“a”,3.0); B.fun('ab',19.5);C.t=fun('z',3.6); D.fun(65,32);4.已知char sr[20];int i;从键盘向数组sr输入一字符串的正确语句是 ( )A.gets(sr); B.gets(sr[20]);C.for(i=0;i<20;i++)scanf(sr); D.for(i=0;i<20;i++)gets(&sr);5.执行下列c语言程序段,循环结束的条件是 ( )int n=0,P,sum=0;do{scanf(“%d”,&p);n++;sum+=p;}while(sum!:126&&n<5);A.sum的值不等于126或n的值小于5 B.sum的值不等于126且n的值小于5C.sum的值等于l26或n的值大于等于5 D.sum的值不等于126且n的值大于等于56.下列C语言程序的输出结果是 ( )main( ){int a=13,m=0;switch(a%3){case0:m++:1case 1:m--;case 2:m++;default:m++;}prinff(“%d”,m);}A.-1 B.0C.1 D.27.已知C语言程序段如下:struct sa{int num:char name[10];float f;}stu[3]={{5,“li ming”,85.0},{ 6,“liu liaing”,91.5},{7,“wang xin”,100}};struct sa*P;P =stu;则值为91.5的表达式是 ( )A.(*p)·f B.(*++p).fC.(*P++).f D.(p++)->f8.下列程序是计算两个矩阵的乘积,其算法的时间复杂度是 ( )Void mul—matrix(int n,int[ ][5],int b[ ][5],int c[ ][5]){int i,j,k,x;for(i=0;i<n;i++){for(j=0;j<n;j++){X=0;for(k=0;k<n;k++)X+=a[i][k]*b[k][j];e[i][j]=X;}}}A.O(n) B.O(log3 N)2C.O(n2) D.O(n3)9.若不带头节点的单链表的头指针为head,则判定该链表为空的条件是 ( )A.head==NULL B.head!=NULLC.head->next= =head D.head->next= =NULL10.一个栈的进栈数据元素序列为l、2、3、4、5,则不可能为栈的出栈序列的是 ( )A.2、3、4、1、5 B.1、5、4、3、2C.2、3、1、4、5 D.5、4、1、3、211.一棵二叉树的先序遍历序列为ABCD,中序遍历序列为CBAD,则后序遍历序列是( )A. BCDA B. BCADC. CBDA D. ABDC12.在具有n个顶点、e条边的无向图的邻接表中,所有边的链表中边节点的总数是 ( )A.e/2 B.eC.2e D.2e+n13.已知一个有序表为(12,18,24,35,47,50,62,83,90,115,134),用折半查找法查找值为90 的元素时,查找成功所使用的比较次数是 ( )A.1 B.2C.3 D.414.当待排序序列中记录的关键字基本有序或记录个数较少时,则最好的排序方法是( )A.基数排序 B.冒泡排序C.直接选择排序 D.直接插入排序15.在瀑布模型中,将软件划分为若干个阶段,软件项目的需求分析一般属于 ( )A.维护阶段 B.开发阶段C.运行阶段 D.计划阶段第二部分非选择题二、填空题(本大题共l0小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
计算机软件考试题及答案一、选择题(每题2分,共20分)1. 下列关于操作系统的描述中,不正确的是()。
A. 操作系统是计算机硬件与用户之间的接口B. 操作系统是计算机系统资源的管理者C. 操作系统可以提高计算机系统资源的利用率D. 操作系统是用户编写的程序答案:D2. 在计算机存储器中,CPU可以直接访问的是()。
A. 硬盘B. 内存C. 光盘D. 软盘答案:B3. 下列关于计算机病毒的描述中,正确的是()。
A. 计算机病毒是一种生物病毒B. 计算机病毒可以自我复制C. 计算机病毒只会破坏硬件D. 计算机病毒不能通过网络传播答案:B4. 在下列设备中,属于输入设备的是()。
A. 打印机B. 键盘C. 显示器D. 鼠标答案:B5. 下列关于计算机网络的描述中,不正确的是()。
A. 计算机网络可以实现资源共享B. 计算机网络可以提高计算机的可靠性C. 计算机网络可以提高计算机的计算速度D. 计算机网络可以提高计算机的安全性答案:D二、填空题(每题2分,共10分)1. 计算机软件分为______和______两大类。
答案:系统软件;应用软件2. 在计算机系统中,______是执行程序指令的部件。
答案:CPU3. 计算机的存储器分为______和______两种。
答案:内存储器;外存储器4. 计算机病毒的主要传播途径包括______、______和______。
答案:电子邮件;移动存储设备;网络下载5. 计算机硬件系统主要包括______、______、______、______和______。
答案:输入设备;输出设备;存储器;处理器;控制器三、简答题(每题5分,共20分)1. 简述操作系统的主要功能。
答案:操作系统的主要功能包括进程管理、内存管理、文件管理、设备管理和用户接口。
2. 什么是计算机的硬件组成?答案:计算机的硬件组成主要包括中央处理器(CPU)、存储器、输入设备和输出设备。
3. 计算机病毒的危害有哪些?答案:计算机病毒的危害包括破坏数据、降低系统性能、泄露用户信息、造成网络拥堵等。
《计算机软件基础》试卷二(练习题)
一、选择题:
1、在一个链队列中,若f,r分别为队首、队尾指针,则插入s所指
结点的操作为()。
A) f->next=s; f=s; B) r->next=s; r=s;
C) s->next=r; r=s; D) s->next=f; f=s;
2、从栈顶指针为top的链栈中删除一个结点,并将被删结点的值保存中,
其操作步骤为()。
A) x=top->data; top=top->next; B) top=top->next; x=top->data;
C) x=top; top=top->next; D) x=HS->data;
3、对含有()个结点的非空二叉树,采用任何一种遍历方式,其结
点访问序列均相同。
A) 0 B)1 C) 2 D)不存在这样的二叉树
4、数组A中,每个元素A的长度为3个字节, 行下标i从1到8, 列下标j从1到10, 从首
地址SA开始连续存放在存储器内, 该数组按行存放时, 元素A[8][5]的起始地址为________.
A. SA+141
B. SA+144
C. SA+222
D. SA+225
5、含n个顶点的连通图中的任意一条简单路径,其长度不可能超过()。
A)1 B)n/2 C)n-1 D)n
6、在图的邻接表存储结构上执行深度优先搜索遍历类似于二叉树的()。
A)先根遍历 B)中根遍历 C)后根遍历 D)按层次遍历
7、设有序表的关键字序列为
{1,4,6,10,18,35,42,53,67,71,78,84,92,99},当用二分查找法查找键
值为84的结点时,经()次比较后查找成功。
A) 2 B)3 C)4 D)12
8、如果节点A有三个兄弟,而B又是A的父亲,试问B的度是()。
A)2 B)3 C)4 D)5
9、一个n*n的对称矩阵, 如果以行或列为主序存入内存, 则容量为_________
A. n*n
B. n*n/2
C. n*(n+1)/2
D.(n+1)*(n+1)/2
10、设有一顺序栈S,元素s1,s2,s3,s4,s5,s6依次进栈,如果6
个元素出栈的顺序是s2,s3,s4,s6,s5,s1,则栈的容量至少应该是
()。
A)2 B)3 C)5 D)6
11、将含有83个结点的完全二叉树从根结点开始编号,根为1号,后面
按从上到下,从左到右的顺序对结点编号,那么编号为41的结点双亲结
点编号为( ).
A) 42 B) 40 C) 21 D) 20
二、填空题:
1、————可以作为实现递归函数调用的一种数据结构。
2、在具有n个单元的循环队列中,队满时共有——个元素。
3、哈夫蔓树是带权路径长度———的树,通常权值较大的结点离根——。
4、二维数组A[10..20,5..10]采用以行为主的方法存储,每个元素占用4个存储单元,
并且A[10,5]的存储地址是1000,则A[18,9]的地址为----------。
5、深度优先搜索遍历类似于树的________遍历,它所用到的数据结构是_________;广度优先搜索遍历类似于树的———遍历,它所用到的数据结构是——。
6、——————的有向图,其全部顶点有可能排成一个拓扑序列。
7、进行二分法查找必须具备两个条件是______________________。
8、如果一棵树有n
1个度为1的结点,n
2
个度为2的结点,.., n
m
个度为
m的结点,叶子个数为_______________。
三、应用题:
1、已知一棵二叉树的前根序列和中根序列分别为ABDGHECFIJ及GDHBEACIJF,试画出这棵二叉树。
2、下列所示的林转换二叉树。
3、已知下列所示的一无向连通图,试构造出它的最小生成数。
4、对给定一个关键字序列36,27,30,7,48,52,构造一棵二叉排序树。
5、对于一组关键字49,7,50,5,94,16,90,29,71写出每一趟冒泡排序的序列。
四、设计题
编写递归算法,将二叉树中所有结点的左、右子树相互交换。
《计算机软件基础》试卷二参考答案
一、选择题
1、B
2、A
3、B
4、C
5、C
6、A
7、C
8、C 9、C 10、B 11、D
二、填空题
1、栈,
2、n-1
3、最短,近
4、1208
5、先根,栈,层次,队列
6、无环(存在入度为0的顶点
7、顺序表和按关键字有序表
8、1+n2+2*n3+(m-1)n m
三应用题
4.冒泡排序
49 7 50 5 94 16 90 29 71
7 49 5 50 16 90 29 71 94
7 5 49 16 50 29 71 90 94
5 7 1
6 49 29 50 71 90 94
5 7 1
6 29 49 50 71 90 94
1
四、设计题(10分)
Bitree exchange(Bitree T)
{ Bitree S;
if(T==NULL) return NULL;
S=(Bitree) malloc(sizeof(Bitnode);
S->data=T->data;
S->lchild=exchange(T->rchild);
S->rchild=exchange(T->lchild); return S;
}。