历年程序员试题真题 (1)

合集下载

历年计算机软件水平考试程序员笔试真题

历年计算机软件水平考试程序员笔试真题

试题1从下列叙述中,选出5条正确的叙述,把编号依次写在答卷的A-E栏内.1.在有些操作系统中,外部设备通常被作为⽂件处理.2.递归算法的程序结构⽐迭代算法的程序结构更为清晰.3.在软件开发过程中,编程作业的代价.4.数组是同类型值的集合.5.树是⼀种线性表.6.良好的程序设计风格应以缩⼩程序占⽤的存储空间和提⾼程序的运⾏速度为原则.7.为了提⾼程序的运⾏速度,有时采⽤以存储空间换取运⾏速度的办法.8.对同⼀算法,⽤⾼级语⾔编写的程序⽐⽤低极语⾔编写的程序运⾏速度快.9.数据是计算机系统的⼀种资源.10.COBOL是⼀种⾮过程型语⾔.11.LISP是⼀种逻辑型程序设计语⾔.12.UNIX是⼀种交互的分时操作系统.试题2选出应填⼊下列叙述中的____内的正确答案,把编号写在答卷的对应栏内.线性表的表元存储⽅式有_A__和链接两种.试指出下列表中使⽤的是何种存储⽅式:表1是_B__存储⽅式;表2是_C___存储⽅式;表3是__D__存储⽅式;表4是_E___存储⽅式.表左的S指向起始表元表1 表2┏━━━━┳━━┳━━┳━━━━━┓┏━━━━┳━━┳━━┳━━━━━┓┃表元编号┃货号┃数量┃表元间联系┃┃表元编号┃货号┃数量┃表元间联系┃┣━━━━╋━━╋━━╋━━━━━┫┣━━━━╋━━╋━━╋━━━━━┫S→┃ 1 ┃ 618┃ 40┃ 2 ┃┃ 1 ┃ 618┃ 40┃ 5 ┃┃ 2 ┃ 205┃ 2┃ 3 ┃S→┃ 2 ┃ 205┃ 2┃ 1 ┃┃ 3 ┃ 103┃ 15┃ 4 ┃┃ 3 ┃ 103┃ 15┃ 4 ┃┃ 4 ┃ 501┃ 20┃ 5 ┃┃ 4 ┃ 501┃ 20┃ 0 ┃┃ 5 ┃ 781┃ 17┃ 6 ┃┃ 5 ┃ 781┃ 17┃ 6 ┃┃ 6 ┃ 910┃ 24┃ 0 ┃┃ 6 ┃ 910┃ 24┃ 3 ┃┗━━━━┻━━┻━━┻━━━━━┛┗━━━━┻━━┻━━┻━━━━━┛表3 表4┏━━━━┳━━┳━━┳━━━━━┓┏━━━━┳━━┳━━┳━━━━━┓┃表元编号┃货号┃数量┃表元间联系┃┃表元编号┃货号┃数量┃表元间联系┃┣━━━━╋━━╋━━╋━━━━━┫┣━━━━╋━━╋━━╋━━┯━━┫┃ 1 ┃ 618┃ 40┃ 5 ┃┃ 1 ┃ 618┃ 40┃ 5 │ 2 ┃S→┃ 2 ┃ 205┃ 2┃ 1 ┃S→┃ 2 ┃ 205┃ 2┃ 1 │ 0 ┃┃ 3 ┃ 103┃ 15┃ 4 ┃┃ 3 ┃ 103┃ 15┃ 4 │ 6 ┃┃ 4 ┃ 501┃ 20┃ 2 ┃┃ 4 ┃ 501┃ 20┃ 0 │ 3 ┃┃ 5 ┃ 781┃ 17┃ 6 ┃┃ 5 ┃ 781┃ 17┃ 6 │ 1 ┃┃ 6 ┃ 910┃ 24┃ 3 ┃┃ 6 ┃ 910┃ 24┃ 3 │ 5 ┃┗━━━━┻━━┻━━┻━━━━━┛┗━━━━┻━━┻━━┻━━┷━━┛供选择的答案A,B,C,D,E: 1.连续 2.单向链接 3.双向链接 4.不连续 5.循环链接6.树状7.状8.随机9.顺序 10.顺序循环试题3根据其服务对象,常⽤的单处理机的操作系统可分为以下3种类型:1)允许多个⽤户在其终端上同时交互的使⽤计算机的操作系统,称为_A__,通常*采⽤_B__策略为⽤户服务.2)允许⽤户把若⼲个作业提交计算机系统集中处理的操作系统,称为_C__.3)在_D__的控制下,计算机系统能及时处理由过程控制反馈的数据并作出响应.设计_D__时,⾸先要考虑系统的_E__.供选择的答案A,C,D: 1.络操作系统 2.分布式操作系统 3.分时操作系统 * 4.实时操作系统 5.单⽤户操作系统 6.批处理操作系统B,E: 1.可靠性和灵活性 2.实时性和可靠性 3.优先权分配4.时间⽚轮转5.短作业优先6.时间⽚加权分配试题4根据⽂件的内部结构,可以把⽂件分为记录式⽂件和流式⽂件两类.记录式*⽂件是⼀个有相同类型记录的有序集合.流式⽂件内部没有记录概念.最常见的*流式⽂件是字符流⽂件,可看成是_A__的有序集合.⼀般来说⽂件名及其属性可*以收纳在_B__中,以便查找._B__本⾝也是⼀种_C__.⽤户可以通过键盘命令和系*统调⽤两种⽅式,使⽤⽂件系统.当⽤户通过键盘命令修改⽂件时,应使⽤_D__命令;在程序内使⽤⽂件之前,需先使⽤_E__语句.供选择的答案A: 1.字符串 2.数组 3.记录 4.页⾯B: 1.⽬录 2.索引 3.字典 4.作业控制块C: 1.数组 2,记录 3.⽂件 4.数据集合D: 1.创建 2.修改 3.改名 4.编辑E: 1.打开 2.读 3.建⽴ 4.写试题5⼈们在使⽤⾼级程序设计语⾔编程时,⾸先可通过编译程序发现源程序中的*全部_A__及部分_B__.然后可采⽤_C__来发现程序中的运⾏错误和采⽤_D__来确定错误的位置._E__是泛指⽤户在验收中发现的结果于需求不符的错误.供选择的答案A,B,E: 1.符号错误 2.逻辑错误 3.语法错误 4.通路错误5.语义错误6.溢出错误7.设计错误C,D: 1.诊断 2.测试 3.校验 4.排错 5.普查 6.试探试题6 2 3右⾯流程图⽤于找出不定⽅程X+2=Y (1<=x<=100)所有整数解.供选择的答案A,C,D: 1.x:0 2:w:t 3.t:x 4.x:100 5.w:100 6.y:t 7.x:101 8.t:100B,E: 1.x→y 2.x→w 3.Y*Y→w 4.1→w 5.Y*Y*Y→w 6.x*y→w 7.w+1→w试题7⼆进制数1011.101相应的⼗进制数是_A__. ⼗进制数1989的余3代码是_B__.设以N=S1S2.b1b2b3...bk表⽰⼀浮点数的双符号位补码尾数(也称为变形补码,其中S1,S2为双符号位,各Sj,bi均取值0或1).当_C__时,此尾数为规格化数.当运算结果出现_D__时,需进⾏左规;当运算结果尾数出现_E__时,表明尾数溢出,则需进⾏右规.供选择的答案A: 1.9.3 2.11.5 3.11.625 4.11.10B: 1.0001 1001 1000 1100 2.0100 1100 1011 11003.0001 1001 1000 01104.0000 0111 1100 1000C,D,E: 1.S1,S2,b1三者相同 2.S1,S2相同⽽与b1不同 3.S1与S2不同且必须S2=b14.S1与S2不同,⽽不论b1为何值5.S1与b1相同但与S2不同6.S1与b1相同,⽽不论S2为何值试题8由逻辑变量A,B,C构成的多数表决函数的逻辑表达式F=_A__.三个逻辑变量A,B,C的⾮⼀致函数的逻辑表达式F=_B__.━━━━已知有逻辑关系式AB+AB=C,则AC+AC=_C__.有⼀套四机联动系统,当D机运⾏时,A,B,C三机才可运⾏.当A,B,C同时运⾏或其*中A,C两机或B,C两机同时运⾏时,可使⼀指⽰灯F亮.则指⽰灯F亮的逻辑表达式F=_D__.━━━━━化简F=A+ABC+ACD+(C+D)B=_E__.供选择的答案A,B,C: 1.0 2.1 3.A 4.B 5.C 6.A○B+B○C+C○A 7.A○B○C________________________───────────────8.AB·BC·CA 9.AB+BC+CA 10.A+B+C* __D,E: 1.A+CD 2.ABC+D 3.A+B+CD 4.(A+B)CD 5.A+B+CD 6.AB*D试题9⼀个双⾯5英⼨软盘⽚,每⾯40道,每道8个扇区,每个扇区512个字节,则盘⽚总容量为_A__.若该盘驱动器转速为600转/分,则平均等待时间为_B__,数据传送率为_C__.某固定磁头硬盘有16个磁头,每磁道存贮量为62500位,盘驱动器转速为2400转/分则数据传送率为_D__.某台标准9道磁带机,带速为200⼨/秒,存贮密度为1600BPI.磁带记录格式为*每块3200字节,块间间隙为0.5⼨,则其平均数据传送率为_E__.供选择的答案A: 1.160KB 2.320KB 3.640KB 4.1.2MBB: 1.25MS 2.50MS 3.100MS 4.200MSC,D,E: 1.10KB/S 2.40KB/S 3.256KB/S 4.320KB/S 5.5MB/S 6.40MB/S 7.256MB/S 8.320MB/S 试题10从下列叙述中,选出5条正确的叙述,把编号依次写在答卷的A-E栏内.1.在CPU中执⾏算术运算和逻辑运算都是按位进⾏且各位之间独⽴⽆关的.2.在没有设置乘,除法的计算机系统中就⽆法实现乘,除法运算.3.在做浮点运算时,是根据阶码是否溢出来判断最后结果是否溢出的.4.⼤多数个⼈计算机中可配制的内存容量受地址总线位数限制.5.⼤多数个⼈计算机中可配制的内存容量受指令中地址码部分位数的限制.6.可编程逻辑阵列也是主存的⼀部分.7.由组合逻辑电路互连构成的⼀定还是组合逻辑电路.8.可编程的只读存贮器芯⽚不⼀定是可改写的.9.双极型半导体存贮器芯⽚通常⽐⾦属氧化物半导体存贮器芯⽚存取速度快,但*价格也贵.10.磁带上的信息必须定时刷新,否则⽆法长期保存.11.汉字内码为计算机系统内部处理和存贮的形式,它的码长与ASCII码仅有⼀位之差.12.汉字输⼊码可分为⽆重码和有重码两类.国标码,区位码,电报明码等为⽆重*码类码,⽽拼⾳码,⾸尾码等为有重码类码.试题11选出与下列⽂件操作语句关系最密切的应填⼊相应___中的单词,The _A_ statement causes the positioning of a file to be as it whenwas the file was first opened.The _B_ statement disconnects a unit number from a specific file.The _C_ statement is used to transmit data from a file to a program.The _D_ statement is treated only as documentation and is ignored duringthe execution of the program.The _E_ statement assigns a unit number ti a specific file.The answers:A,B,C,D,E: MENT 2.EXECUTE 3.CLOSE 4.READ 5.REWIND 6.OPEN 7.WRITE 8.FORWARD试题12选出应填⼊下⾯⼀段英语中____内的正确答案,把编号写在答卷的对应栏内.The terms FIFO and LIFO refer to two techniques for _A_ with collectionof items to which additions and _B_ are to be made. The acronym FIFO _C_for first-in-first-out and LIFO represents last-in-first-out. Derived frombusiness accounting and investing management _D_,these techniques have found widespread application in computer science. For example, the LIFO technique has been uesd in the parsing tehniques employed by compilers and in the _E_of data.The answers:A,B,C,D,E: 1.producing 2.dealing working 4.searching 5.deletions6.locations7.observations8.notations9.stands 10.represents11.finds 12.replaces试题13* 从下列英语叙述中,选出5条正确的叙述,把编号依次写在答卷的对应栏内.1.The language translator converts the symbolic program into source program.2.The coded program written by a programmer is called an object program.3.COBOL is self-documenting unlike many technical language.4.FORTRAN has high capabilities for performing input/output operations andin handling nonnumeric data.5.Loading is a process through which the information on the diskettes or tapesis read by the input unit and stored in the proper memory location.6.The assemble executes source codes directly by determining the meaning of each statement as it is encounted.7.Magnetic tape uses cylinders for finding data.8.Hexadecimal is used as a shorthand for the internal codes.9.Another name of diskette is floppy disk.10.An IF-THEN-ELSE selection technique can never br part of a loop.11.The most popular language for scientific computing is FORTRAN.12.It is much easier to access data in a file than in a data base.试题17积分和微分是两种分析运算,它们都是⽤_A_来定义的.数值积分和数值微*分可归结为函数值的_B_,从⽽使计算过程可以在计算机上完成.处理数值积分和数值微分的基本⽅法是_C_.⽜顿求积公式中节点间距离是_D_的,⽽⾼斯*公式中节点间距离是_E_的.供选择的答案A,B: 1.四则运算 2.导数运算 3.函数运算 4.极限运算 5.极数运算 6.逻辑运算C: 1.逼近法 2.反幂法 3.消去法 4.变换法D,E: 1.递增 2.递减 3.等距 4.有极数规律 5.⾮上述规律试题18从下列叙述中,选出5条正确的叙述,把编号依次写在答卷的A-E栏内.下⾯叙述中E(X)和D(X)分别是随机变量X的期望值和均平⽅值.1.事件A和事件B不相容的充要条件是P(A*B)=0.2.若事件A 和 B相互独⽴,则P(A*B)=0和P(A+B)=P(A)+P(B).3.掷两个匀称的(6点)骰⼦,则P(点数之和=2)=1/(6+6).24.若X的概率密度函数服从正态分布N(µ,σ),则 E(x)=µ,D(x)=σ.5.记φ(x)为N(0,1)的分布函数,则φ(x)=φ(-x).6.设x服从普阿松分布,则E(x)=D(x).2 27.对任意随机变量X,都有E(X)=(E(X))+D(X).8.D(x)=E(x-E(x)).9.若随机变量x,y独⽴,则D(x-y)=D(x)-D(y).10.设x1,x2,...,xn 为母本x的随机样本,g(x1,x2,...,xn)为⼀连续函数,则g(x1,x2,...xn)*为⼀统计量.1 n 2 211.样本均⽅差Dn=───Σ(Xi-E(X))是总体均⽅差σ的⽆偏估计.n-1 i=112.参数的似然估计值必.试题19考虑由甲⼄两⽅进⾏的零和对策问题,设它们采⽤的策略都是使⾃⼰的*的损失最⼩,这常被称之为_A_准则.现给出甲的得分如表1所⽰.由该表可见,我*们⽆法找到__B__,因此我们转向使⽤__C__策略来求解这⼀问题.通过化简可得*甲的得分表如表2所⽰.由此可得甲的决策是__D__,此时甲的期望分是__E__.┏━━━┯━━━━━━━━━━━━━━┓┏━━━┯━━━━━━━┓┃│⼄选择的对策┃┃│⼄选择的对策┃┃├──┬──┬──┬──┬──┨┃├───┬───┨┃│ 1' │ 2' │ 3' │ 4' │ 5' ┃┃│ 1' │ 2' ┃┠─┬─┼───┼───┨┃甲│1 │ 3 │ 4 │ 0 │ 3 │ 0 ┃┃甲│││┃┃├─┼──┼──┼──┼──┼──┨┃选│3 │ 7 │ 3 ┃┃选│2 │ 5 │ 0 │ 2 │ 5 │ 9 ┃┃择│││┃┃├─┼──┼──┼──┼──┼──┨┃的├─┼───┼───┨┃择│3 │ 7 │ 3 │ 9 │ 5 │ 9 ┃┃对│││┃┃├─┼──┼──┼──┼──┼──┨┃策│4 │ 4 │ 6 ┃┃对│4 │ 4 │ 6 │ 8 │ 6 │ 6 ┃┃│││┃┃├─┼──┼──┼──┼──┼──┨┗━┷━┷━━━┷━━━┛┃策│5 │ 6 │ 3 │ 8 │ 3 │ 3 ┃┗━┷━┷━━┷━━┷━━┷━━┷━━┛供选择的答案A,B,C:①②最⼩③最⼩最⼩④最⼩⑤鞍点⑥极点⑦拐点⑧零点⑨单纯⑩混和⑾随机⑿复合D:设α=(α1,α2,α3,α4,α5)为甲选择对策1,2,3,4,5的概率;设β=(β1,β2,β3,β4,β5)为⼄选择对策1',2',3',4',5'的概率.①α=(0,0,0,1,0) β=(1,0,0,0,0)②α=(0,0,3/5,2/5,0) β=(3/5,2/5,0,0,0)③α=(0,0,1/2,1/2,0) β=(1/4,3/4,0,0,0)④α=(0,0,1/3,2/3,0) β=(1/2,1/2,0,0,0)E:① 5 ②5,5 ③5,8 ④9试题20如何抑制⼲扰是计算机数据测量中的重要问题,通常采⽤具有差分输⼊的运*算放⼤器作为输⼊级是为了克服___A___型⼲扰.为了提⾼测量中的信号/噪声⽐,常采⽤⾼的采样率和滑动平均法对近邻的N*个数据平均.若测量中包含的是与信号不相⼲的随机噪声,则可期望⽤此⽅法使*信号/噪声⽐为原来的___B___倍.如果除掉值和最⼩值然后再求平均,则可*提⾼抑制___C___型噪声的能⼒.我们还可以使⽤数字滤波去除噪声.设Yn和Xn分别为输出和输⼊序列,a>0和b>0是系数,则Y(n)=aX(n)+bY(n-1)是___D___型滤波,Y(n)=aX(n)-bY(n-1)是___E___供选择的答案A,C:①电磁②交流③直流④脉冲⑤共模⑥串模⑦地线⑧相关B:① N ②N ③N ④N/2D,E:①低通②⾼通③带通④带阻下午试题试题⼀[说明]流程图1.1实现了⼀个将⼀组⽆序数列a1,a2,...,an排成递增序列的算法.该算法在s-1到r(初值为1到n)的区间内,先冒泡后进⾏排序,直到该区间为空.图中变量K⽤来指出⼀次冒泡或下沉后a1--ak或ak--an已排序.试题3阅读下列程序说明和PASCAL程序,把应填⼊其中_______处的字句,写在答卷的对应栏内.[程序说明]本题给出的⼦程序⽤来寻找第⼀个均出现在三个整数链表中的相同整数.假定在调⽤该⼦程序前,这三个整数链表已按从⼩到⼤的次序排序.有关的类型定义如下: type pt=^elem;elem=recordint:integer;link:ptend;[程序]procedure lookint (f1,f2,f3:pt; var found:boolean; var val:integer);var exit:boolean;begin found:=false;while ____________ and not found dobeginif __________________then f1:=f1^.linkelse if _______________then f2:=f2^.linkelse found:=true;if foundthen begin found:=false; exit:=true;while (f3<>nil) and not found and exit doif f3^.int=f1^.intthen found:=trueelse if ___________________then f3:=f3^.linkelse begin _______________;exit:=falseendendend;if found then val:=f1^.intend;试题7[程序说明]本⼦程序⽤来建⽴⼀个已知⽂件的索引⽂件.建⽴索引的关键字段名为key.设有类型:seqelement=record ..., key:simpletype, ... end;tmpelement=record {⼯作⽂件的成分类型}key : simpletype; {存贮关键字值}no : integer {对应的已知⽂件成分的序号}end;tseqfile = file of seqelement; {已知⽂件的类型}tindxfile = file of integer; {索引⽂件类型}其中 simpletype 是某简单顺序类型名.为建⽴索引⽂件,⼦程序引⼊⼀个数组a与两个⼯作⽂件g,h.建⽴索引⽂件的⽅法是:⾸先重复执⾏以下步骤,直⾄已知⽂件读完:1. 从已知⽂件读出多⾄100个记录,将记录中关键项的值及该记录的序号送到数组a;2. 对a按关键字值从⼩到⼤排序;3. 将a与⽂件g(或h)合并于⽂件h(或g).合并时,使⽂件h(或g)是按关键字值排序的.然后由⽂件h(或g)⽣成索引⽂件.[程序]procedure indexed (var seqfile : tseqfile; var index file : tindxfile);const arsize = 100;type tmparray = array [1..arsize] of tmpelement;tmpfile = file of tmpelement;var a : tmparray;g,h : tmpfile;n,recno : integer;s : boolean;procedure sort(var a : tmparray; n : integer); {将数组a的前n个元素按key递增排序,本过程的过程体省略}procedure combi(var f1,f2 : tmpfile); {将⽂件f1与数组a按关键字值从⼩到⼤合并于⽂件f2}var i,j : integer;begin i:=1; reset(f1); rewrite(f2);while ________________ dobeginif f1^.key <= a[i].key thenbegin f2^:=f1^; get(f1) endelsebegin ___________ ; __________ end;put (f2);end;while not eof(f1) dobegin f2^:=f1^; get(f1); put(f2) end;for j:= i to n dobegin f2^:=a[j]; put(f2) endend;procedure gindex (var f:tmpfile);begin rewrite (indexfile); reset(f);while not eof(f) dobegin indexfile^:=f^.no;put (indexfile); get(f)endend;begin reset(seqfile); recno:=0;s:=true;repeat n:=0 ;while ____________ dobegin n:=n+1; a[n].key:=seqfile^.key;recno:=recno+1;a[n].no:=recno;get(seqfile)end;sort(a,n);if s then combi(g,h)else combi(h,g);_______________________until eof (seqfile);if ________________ then gindex(g)else gindex(h)end;试题11[程序说明]本程序能从1⾄n(n<1000)的⾃然数中取r个数的所有组合,并按指定的格式输出其结果.例如,n=5,r=3时,共有10种组合(见下⾯左边列表),⽽程序将按下⾯右边列表形式输出(每⼀⾏前有⼀空格).10种组合程序输出形式combinations:1,2,3 1 2 31,2,4 41,2,5 51,3,4 3 41,3,5 51,4,5 4 52,3,4 2 3 42,3,5 52,4,5 4 53,4,5 3 4 5[程序]program comnr(input,output);var n,r:integer;blank:boolean;proecdure combination(s,j:integer);var i:integer;beginfor i:= _____________ to n-j+1 dobeginif ____________ then write (' ':______________*3+1); write (i:3); blank:=false;if ___________________ thencombination (______________)else beginwriteln;______________________endendend;begin writeln('ENTER N,R.');readln(n,r); blank:=true;writeln('combinations:');combination(1,r)end.。

程序员笔试题(附答案)

程序员笔试题(附答案)

程序员笔试题(附答案)最近⼀直在找⼯作,经历了⼀些笔试,凭记忆把它们记下了,现在把答案整理出来,⼤家⼀块学习(1)Overload和Override的区别⽅法的重写Overriding和重载Overloading是Java多态性的不同表现。

重写Overriding是⽗类与⼦类之间多态性的⼀种表现,重载Overloading是⼀个类中多态性的⼀种表现。

如果在⼦类中定义某⽅法与其⽗类有相同的名称和参数,我们说该⽅法被重写 (Overriding)。

⼦类的对象使⽤这个⽅法时,将调⽤⼦类中的定义,对它⽽⾔,⽗类中的定义如同被“屏蔽”了。

如果在⼀个类中定义了多个同名的⽅法,它们或有不同的参数个数或有不同的参数类型,则称为⽅法的重载(Overloading)。

Overloaded的⽅法是可以改变返回值的类型。

(2)String Stringbuffer和StringBuilder的区别StringBuffer线程安全的可变字符序列。

⼀个类似于 String 的字符串缓冲区,但不能修改。

虽然在任意时间点上它都包含某种特定的字符序列,但通过某些⽅法调⽤可以改变该序列的长度和内容。

可将字符串缓冲区安全地⽤于多个线程。

可以在必要时对这些⽅法进⾏同步,因此任意特定实例上的所有操作就好像是以串⾏顺序发⽣的,该顺序与所涉及的每个线程进⾏的⽅法调⽤顺序⼀致。

StringBuffer 上的主要操作是 append 和 insert ⽅法,可重载这些⽅法,以接受任意类型的数据。

每个⽅法都能有效地将给定的数据转换成字符串,然后将该字符串的字符追加或插⼊到字符串缓冲区中。

append ⽅法始终将这些字符添加到缓冲区的末端;⽽ insert ⽅法则在指定的点添加字符。

例如,如果 z 引⽤⼀个当前内容是“start”的字符串缓冲区对象,则此⽅法调⽤ z.append("le") 会使字符串缓冲区包含“startle”,⽽ z.insert(4, "le") 将更改字符串缓冲区,使之包含“starlet”。

程序员考试真题及答案

程序员考试真题及答案

程序员考试真题及答案试题一(15分)阅读下列函数说明和 C 代码,将应填入其中__(n)__处的字句写在答卷的对应栏内。

【函数1.1说明】设链表结点的类型为typedef struct elem{ int val;struct elem *next;} intNode;函数 merge(int *a,int *b) 是将两个升序链表 a 和 b 合并成一个升序链表。

【函数1.1】intNode *merge(intNode *a,intNode *b){ intNode *h = a,*p,*q;while(b){ for (p = h; p && p-&gtval&ltb-&gtval; q = p, p = p-&gtnext);if (p == h) __(1)__; else __(2)__;q = b; b = b-&gtnext; __(3)__;}return h;}【函数1.2说明】递归函数 dec(int a[],int n) 判断数组 a[] 的前 n 个元素是否是不递增的。

不递增返回 1 ,否则返回 0 。

【函数1.2】int dec(int a[],int n){ if (n <= 1) __(4)__;if (a[0] < a[1]) return 0;return __(5)__;}试题二(18分)阅读下列函数说明和 C 代码,将应填入__(n)__处的字句写在答卷的对应栏内。

【函数2.1说明】设长正整数用数组存储,如有 k 位的长整数m用数组 a[] 存储:m = a[k]*10k-1a[k-1]*10K-2+……+a[2]*101+a[1]*100并用a[0]存储长整数m的位数,即a[0]=k。

通常,存储长整数数组的每个元素只存储长整数的一位数字。

长整数运算时,为了运算方便,产生的中间结果的某位数字可能会大于 9。

历年程序员试题真题 (1)

历年程序员试题真题 (1)

2009 年上半年程序员上午试卷●用户打开名为“个人简历”的Word 文件,通常是指(1);若再单击常用工具栏上的“(2)”按钮,可以插入表格。

(1)A.显示并打印该文件的内容B.为该文件开设一个新的、空的文档窗口C.将该文件内容从磁盘调入内存并显示D.将该文件内容从内存中读出并显示(2)A. B. C. D.●某品牌商品销售情况表如图(a)所示。

若想按产品类别分别累计销售量,可使用分类汇总命令。

汇总的结果如图(b)所示。

图(a) 图(b)在进行分类汇总前,应先对数据清单中的记录按(3)字段进行排序;选择“数据/分类汇总”命令,并在弹出的“分类汇总”对话框中的“选定汇总项”列表框内,选择要进行汇总的(4)字段,再点击确认键。

(3)A.产品 B.销售日期 C. 销售地点 D.销售量(4)A.产品 B.销售日期 C. 销售地点 D.销售量●(5)是格式正确的E-mail 地址。

(5)A. web master@ B. webmaster @ C. http:\\ D. http:// ●若采用16-bit 补码表示整数,则可表示的整数范围为(6)。

(6)A. [-215,215] B. (-215,215]C. (-215,215)D. [-215,215)●CPU 执行算术运算或者逻辑运算时,算术逻辑运算部件(ALU)将计算结果保存在(7)中。

(7)A.累加器AC B. 程序计数器PCC.指令寄存器IRD. 地址寄存器AR●(8)不是使用光(激光)技术来存取数据的存储介质。

(8)A. DVD B. EEPROM C. CD-ROM D. CD-RW●(9)既有检错功能又有纠错功能。

(9)A.水平奇偶校验 B.垂直奇偶校验 C.海明校验 D.循环冗余校验●计算机的用途不同,对其部件的性能指标要求也有所不同。

以科学计算为主的计算机,对(10)要求较高,而且应该重点考虑(11)。

(10)A.外存储器的读写速度 B.主机的运算速度C. I/O设备的速度D.显示分辨率(11)A. CPU 的主频和字长,以及内存容量B.硬盘读写速度和字长C. CPU 的主频和显示分辨率D.硬盘读写速度和显示分辨率●声音信号的数字化过程包括采样、(12)和编码。

历年计算机软考程序员部分真题及答案.doc

历年计算机软考程序员部分真题及答案.doc

历年计算机软考程序员部分真题及答案●在Windows操作系统中,"回收站"可以恢复_(1)_上使用键删除文件或文件夹。

在"我的电脑"窗口中,如果要整理磁盘上的碎片,应选择磁盘"属性"对话框_(2)_选项卡。

使用"资源管理器"时,_(3)_,不能删除文件或文件夹。

(1)A.软盘B.硬盘C.U盘D.软盘或硬盘(2)A.常规B.硬件C.共享D.工具(3)A.在驱动器或文件夹窗口中,选择要删除的文件并单击退格键B.在驱动器或文件夹窗口中,选择要删除的文件同时按下+键C.在要删除的文件或文件夹上单击鼠标右键,选择"删除"。

D.用鼠标直接拖动选中的文件夹到"回收站"。

●在以下关于电子邮件的叙述中,“_(4)_”是不正确的。

(4)A.打开来历不明的电子邮件附件可能会传染计算机病毒B.在网络拥塞的情况下,发送电子邮件后,接收者可能过几个小时后才能收到C.在试发电子邮件时,可向自己的Email邮箱发一封电子邮件D.电子邮箱的容量指的是用户当前使用的计算机上,分别给电子邮箱的硬盘容量●某数值编码为FFH,若它所表示的真值为-127,则它是用_(5)_表示的;若它所表示的真值为-1,则它是用_(6)_表示的。

(5)A.原码B.反码C.补码D.移码(6)A.原码B.反码C.补码D.移码●用定点补码表示纯小数,采用8位字长,编码10000000表示的十进制数是_(7)_。

(7)A.0 B.-1 C.+1 D.128●假设用12个二进制表示数据。

它能表示的无符号整数为_(8)_;若采用原码,它能表示的最小负整数为_(9)_。

(8)A.2047 B.2048 C.4095 D.4096(9)A.-2047 B.-2048 C.-4095 D.-4096●某数据的7位编码为0110101,若在其中位之前加一位偶校验位,则编码为_(10)_。

初级程序员应用技术考试真题及答案

初级程序员应用技术考试真题及答案

初级程序员应用技术考试真题及答案一、选择题1.在软件开发过程中,需求分析和设计阶段的主要目的是?A. 实现软件功能B. 确定软件开发的方法和技术C. 预测软件的性能和可扩展性D. 明确软件的功能和用户需求,为编程阶段做准备答案:D2.关于面向对象编程(OOP)的概念,哪一项是错误的?A. 封装是指在面向对象程序设计中将数据和操作数据的方法捆绑在一起B. 继承是指一个类可以继承另一个类的属性和方法C. 多态是指同一个操作作用于不同的对象,可以有不同的解释和表现D. 面向对象程序设计没有考虑数据库操作答案:D3.下列关于计算机指令系统的描述,错误的是?A. 指令系统是计算机硬件的语言系统B. 指令由操作码和操作数组成C. 不同计算机的指令系统完全不同,相互不兼容D. 指令的功能是控制计算机进行某种操作答案:C(不同计算机的指令系统可能有所不同,但并非完全不同且相互不兼容,有些指令系统可能存在一定的兼容性。

)4.以下关于面向对象编程中的继承机制,描述错误的是?A. 继承可以实现代码重用,提高开发效率B. 子类可以继承父类的所有属性和方法(注:私有属性和方法无法直接继承,但可以通过公共方法或构造函数间接访问)C. 子类可以添加新的方法或属性,以扩展父类的功能D. 子类不能重写父类的方法来改变其行为(注:子类可以重写父类的方法以实现多态)答案:B、D(B选项描述不准确,因为私有属性和方法无法直接继承;D选项错误,因为子类可以重写父类的方法)5.在软件工程中,以下哪个阶段不属于软件开发生命周期?A. 需求分析B. 设计C. 编码D. 测试E. 维护(注:维护通常被视为软件开发生命周期的一个后续阶段,而不是开发过程中的一个阶段)答案:E(如果严格区分开发和维护,则E选项正确。

但在某些情况下,维护也可能被视为开发过程的一部分,特别是当涉及到对现有软件的改进和升级时。

然而,根据题目中的表述,“软件开发生命周期”通常不包括后续的维护阶段,因此选择E。

程序员考试-Java真题-附答案解析

程序员考试-Java真题-附答案解析

程序员考试试题库-真题-附答案解析一、选择题1.(2018年)下列选项中,关于java的抽象类和抽象方法说法不正确的是()?A.抽象类和抽象方法都通过abstract关键字来修饰B.abstract可以用来修饰类和方法,但不能用来修饰构造方法C.抽象类中可以没有,有一个或多个抽象方法,但不可以全部方法都是抽象方法D.子类必须重写父类所有的抽象方法才能实例化,否则子类还是一个抽象类2.(2017年)下列关于接口的说法,不正确的是()?A.接口中全部方法都是抽象方法,所有方法都必须是public访问权限B.接口可以有构造方法C.一个接口可以继承多个接口,但接口不能继承类D.接口不能实例化3.(2018年)对于java的多态,以下说法不正确的为()。

A.多态不仅可以减少代码量,还可以提高代码的可扩展性和可维护性B.把子类转换为父类,称为向下转型,自动进行类型转换C.多态是指同一个实现接口,使用不同的实例而执行不同的操作D.继承是多态的基础,没有继承就没有多态4.(2018年)关于java中的abstract,以下说法正确的为()。

(多选)A.a bstract类中可以没有abstract方法B.abstract类的子类也可以是abstract类C.a bstract方法可以有方法体D.a bstract类可以创建对象5.(2018年)关于java中的静态方法,下列说法中不正确的是()(多选)A.静态方法中不能直接调用非静态方法B.非静态方法中不能直接调用静态方法C.静态方法可以用类名直接调用D.静态方法里可以使用this6.(2017年)关于java语言中多态的说法错误的是()。

A.多态是面向对象三大特征之一B.通过多态可以提高代码的可扩展性和可维护性C.把子类转换为父类,称为向下转型D.使用父类作为方法的形参是使用多态的常用方式7.(2018年)下列关于Java中集合接口的说法不正确的是()。

A.c ollection接口存储一组不唯一、无序的对象B.set接口继承collection接口,存储一组唯一、无序的对象C.l ist接口继承collection接口,存储一组不唯一、有序的对象D.M ap接口存储一组成对的键值对象,其中key要求有序,不允许重复,value不要求有序,但允许重复8.(2017年)在AB类的方法method的声明中,可使用AB.method()直接调用方法的正确声明是()。

软考程序员考试历年真题及答案

软考程序员考试历年真题及答案

如对您有帮助,请购买打赏,谢谢您!软考程序员考试历年真题重点题总结及答案一、单选题1、计算机中数据的表示形式是A八进制B十进制C二进制D十六进制2、硬盘工作时应特别注意避免A噪声B震动C潮湿D日光3、针式打印机术语中针是指A24x24点阵B信号线插头有24针C 打印头内有24x24根针D打印头内有24根针4、下面列出的四种存储器中易失性存储器是ARAMBROMCPROMDCD-ROM5、办公自动化是计算机的一项应用按计算机应用的分类它属于A科学计算B实时控制C数据处理D辅助设计6、I/O接口位于A总线和设备之间BCPU和I/O设备之间C主机和总线之间DCPU和主存储器之间7、计算机硬件能直接识别和执行的只有A高级语言B符号语言C汇编语言D机器语言8、具有多媒体功能的微型计算机系统中常用的CD-ROM是A只读型大容量软盘B 只读型光盘C只读型硬盘D半导体只读存储器9、微机中1K字节表示的二进制位数是A1000B8x1000C1024D8x102410、下列字符中码值最小的是AaBACxDY 11、Windows98操作系统是一个A单用户多任务操作系统B单用户单任务操作系统C 多用户单任务操作系统D多用户多任务操作系统12、把Windows98的窗口和对话框作一比较窗口可以移动和改变大小而对话框A既不能移动也不能改变大小B 仅可以移动不能改变大小C仅可以改变大小不能移动D既能移动也能改变大小13、在Windows98中任务栏quot的作用是A显示系统的所有功能B只显示当前活动窗口名C只显示正在后台工作的窗口名D实现窗口之间的切换14、在Word的编辑状态执行编辑菜单中quot复制quot命令后A被选择的内容被复制到插入点处B 被选择的内容被复制到剪贴板C插入点所在的段落内容被复制到剪贴板D光标所在的段落内容被复制到剪贴板15、在Word中quot打开quot文档的作用是A将指定的文档从内存中读入并显示出来B为指走的文档打开一个空白窗口C将指定的文档从外存中读入并显示出来D显示并打印指走文档的内容16、Word的quot文件quot命令菜单底部显示的文件名所对应的文件是A当前被操作的文件B当前已经打开的所有文件C最近被操作过的文件D扩展名是.doc的所有文件17、在Word的编辑状态执行编辑命令quot粘贴quot后A将文档中被选择的内容复制到当前插入点处B将文档中被选择的内容移到剪贴板C将剪贴板中的内容移到当前插入点处D将剪贴板中的内容拷贝到当前插入点处18、在Word的编辑状态进行字体设置操作后按新设置的字体显示的文字是A插入点所在段落中的文字B文档中被选择的文字C插入点所在行中的文字D文档的全部文字19、OSI开放系统互联参考模型的最低层是A传输层B网络层C物理层D应用层20、存储400个24x24点阵汉字字形所需的存储容量是。

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

2009 年上半年程序员上午试卷●用户打开名为“个人简历”的Word 文件,通常是指(1);若再单击常用工具栏上的“(2)”按钮,可以插入表格。

(1)A.显示并打印该文件的内容B.为该文件开设一个新的、空的文档窗口C.将该文件内容从磁盘调入内存并显示D.将该文件内容从内存中读出并显示(2)A. B. C. D.●某品牌商品销售情况表如图(a)所示。

若想按产品类别分别累计销售量,可使用分类汇总命令。

汇总的结果如图(b)所示。

图(a) 图(b)在进行分类汇总前,应先对数据清单中的记录按(3)字段进行排序;选择“数据/分类汇总”命令,并在弹出的“分类汇总”对话框中的“选定汇总项”列表框内,选择要进行汇总的(4)字段,再点击确认键。

(3)A.产品 B.销售日期 C. 销售地点 D.销售量(4)A.产品 B.销售日期 C. 销售地点 D.销售量●(5)是格式正确的E-mail 地址。

(5)A. web master@ B. webmaster @ C. http:\\ D. http:// ●若采用16-bit 补码表示整数,则可表示的整数范围为(6)。

(6)A. [-215,215] B. (-215,215]C. (-215,215)D. [-215,215)●CPU 执行算术运算或者逻辑运算时,算术逻辑运算部件(ALU)将计算结果保存在(7)中。

(7)A.累加器AC B. 程序计数器PCC.指令寄存器IRD. 地址寄存器AR●(8)不是使用光(激光)技术来存取数据的存储介质。

(8)A. DVD B. EEPROM C. CD-ROM D. CD-RW●(9)既有检错功能又有纠错功能。

(9)A.水平奇偶校验 B.垂直奇偶校验 C.海明校验 D.循环冗余校验●计算机的用途不同,对其部件的性能指标要求也有所不同。

以科学计算为主的计算机,对(10)要求较高,而且应该重点考虑(11)。

(10)A.外存储器的读写速度 B.主机的运算速度C. I/O设备的速度D.显示分辨率(11)A. CPU 的主频和字长,以及内存容量B.硬盘读写速度和字长C. CPU 的主频和显示分辨率D.硬盘读写速度和显示分辨率●声音信号的数字化过程包括采样、(12)和编码。

(12)A.合成 B.去噪 C.量化 D.压缩●目前一般家庭中,点播电视系统的用户端必须配置的设备是(13)。

(13)A.解码器 B.调制解调器 C.机顶盒 D.记账设备●多媒体计算机与普通计算机的主要区别是多媒体计算机增加了(14)。

(14)A.存储信息的实体 B.视频和音频信息的处理能力C.光驱和声卡D.大容量的磁介质和光介质●下面关于加密的说法中,错误的是(15)。

(15)A.数据加密的目的是保护数据的机密性B.加密过程是利用密钥和加密算法将明文转换成密文的过程C.选择密钥和加密算法的原则是保证密文不可能被破解D.加密技术通常分为非对称加密技术和对称密钥加密技术●下面关于防火墙功能的说法中,不正确的是(16)。

(16)A.防火墙能有效防范病毒的入侵B.防火墙能控制对特殊站点的访问C.防火墙能对进出的数据包进行过滤D.防火墙能对部分网络攻击行为进行检测和报警●软件著作权的客体是指(17)。

(17)A.公民、法人或其他组织 B.计算机程序及算法C.计算机程序及有关文档D.软件著作权权利人●商标法主要是保护(18)的权利。

(18)A.商标设计人 B.商标注册人 C.商标使用人 D.商品生产者●若8 位二进制数能被4 整除,则其最低2 位(19)。

(19)A.不可能是01、00 B.只能是10 C.可能是01、00 D.只能是00●设两个8 位补码表示的数b7b6b5b4b3b2b1b0和a7a6a5a4a3a2a1a0相加时溢出(b7、a7为符号标志),则(20)。

(20)A. b7与a7的“逻辑或”结果一定为1B. b7与a7的“逻辑与”结果一定为0C. b7与a7的“逻辑异或”结果一定为 1D. b7与a7的“逻辑异或”结果一定为0●(21)属于并行外部总线。

(21)A. PCI B. USB C. IEEE-488 D. IEEE-1394●若指令系统中设置了专用I/O 操作指令,则I/O 接口(22)。

(22)A.与内存单元必须统一编址B.可以独立编址C.必须采用DMA 方式与内存交换数据D.必须采用中断方式与内存交换数据● 在Windows 资源管理器的左窗口中,若显示的文件夹图标前带有“” 标志,则意味着该文件夹(23)。

(23)A.是空文件夹 B.仅含有文件 C.含有子文件夹 D.仅含有隐藏文件●打印质量好、速度快,且工作原理与复印机相似的打印机是(24)。

(24)A.行式打印机 B.激光打印机 C.喷墨打印机 D.点阵打印机● 在Windows 系统中,若要移动窗口,可用鼠标拖动窗口的(25)。

(25)A.标题栏 B.菜单栏 C.状态栏 D.工具栏● 假设系统中进程的三态模型如下图所示,图中的a 和b 处应分别填写(26),图中的c 和d 处应分别填写(27)。

(26)A.时间片到、作业调度程序调度 B.执行了P 操作、时间片到C.时间片到、进程调度程序调度D.时间片到、执行了P 操作(27)A. I/O 完成、执行了P 操作 B.执行了P 操作、I/O 完成C.时间片到、执行了V 操作D.执行了V 操作、I/O 完成● (28)属于系统软件,它直接执行高级语言源程序或与源程序等价的某种中间代码。

(28)A.编译程序 B.预处理程序 C.汇编程序 D.解释程序● (29)属于标记语言。

(29)A. PHP B. Lisp C. XML D. SQL●与表达式“a-(b+c)*d”对应的后缀式为(30)。

(30)A. ab-c*d+ B. abc+d*- C. abcd-+* D. abc+-*d●下图所示的有限自动机中,s0是初始状态,s3为终止状态,该自动机不能识别(31)。

(31)A. abab B. aaaa C. babb D. abba●程序中常采用变量表示数据,变量具有名、地址、值、作用域、生存期等属性。

关于变量的叙述,(32)是错误的。

(32)A.根据作用域规则,在函数中定义的变量只能在函数中引用B.在函数中定义的变量,其生存期为整个程序执行期间C.在函数中定义的变量不能与其所在函数的形参同名D.在函数中定义的变量,其存储单元在内存的栈区●若算术表达式“a*(b-c)+d”采用二叉树描述,则合理的树结构为(33)。

● C 语言具有的“(34)”特性使其适用于系统级应用开发。

(34)A.可直接对位、字节和地址进行运算 B.目标代码短,可移植性好C.采用宏定义和条件编译D.运算符丰富,关键字数量少●以下关于脚本程序语言的叙述中,错误的是(35)。

(35)A.脚本语言需要相应的引擎解释执行B.脚本语言程序一般以文本方式存在C.在网页设计中应用脚本可以提高网页浏览速度、丰富网页的表现D.脚本语言中不允许使用变量●以下关于排序算法的叙述中,正确的是(36)。

(36)A.冒泡排序法中,元素的交换次数与元素的比较次数一定相同B.冒泡排序法中,元素的交换次数不少于元素的比较次数C.简单选择排序中,关键字相同的两个记录在排序前后的相对位置一定不变D.简单选择排序中,关键字相同的两个记录在排序前后的相对位置可能交换●设有一个初始为空的栈,若输入序列为1、2、3、…、n(n>3),且输出序列的第一个元素是n-1,则输入序列中所有元素都出栈后,(37)。

(37)A.元素n-2 一定比n-3 先出栈B.元素1~n-2 在输出序列中的排列是不确定的C.输出序列末尾的元素一定为1D.输出序列末尾的元素一定为n●某二叉树的先序遍历序列为ABFCDE、中序遍历序列为BFADCE,则该二叉树根的左孩子和右孩子结点分别是(38)。

(38)A. B 和 F B. F 和 B C. B 和C D. C 和B●调用递归过程或函数时,处理参数及返回地址需要用一种称为(39)的数据结构。

(39)A.队列 B.栈 C.多维数组 D.顺序表●已知对称矩阵A n*n(A i,j=A j,i)的主对角线元素全部为0,若用一维数组 B 仅存储矩阵A 的下三角区域的所有元素(不包括主对角线元素),则数组B 的大小为(40)。

(40)A. n(n-1) B. n2/2 C. n(n-1)/2 D. n(n+1)/2●设S 是一个长度为5 的字符串,其中的字符各不相同,则计算S 中互异的非平凡子串(非空且不同于S 本身)数目的算式为(41)。

(41)A. 5+4+3+2+1 B. 5+4+3+2 C. 4+3+2+1 D. 4+3+2●折半(二分)查找方法对查找表的要求是(42)。

(42)A.链表存储结构,元素有序排列 B.链表存储结构,元素无序排列C.顺序存储结构,元素有序排列D.顺序存储结构,元素无序排列●若无向连通图G 具有n 个顶点,则以下关于图G 的叙述中,错误的是(43)。

(43)A. G 的边数一定多于顶点数 B. G 的生成树中一定包含n 个顶点C.从G 中任意顶点出发一定能遍历图中所有顶点D. G 的邻接矩阵一定是n 阶对称矩阵● (44)是面向对象方法中最基本的封装单元,它可以把客户要使用的方法和数据呈现给外部世界,而把客户不需要知道的方法和数据隐藏起来。

(44)A. 类 B.方法 C.属性 D.过程● 在进行类设计时,(45)可以选择(46)的某些操作进行完全的继承或变异。

(45)A.派生类 B.基类 C.抽象类 D. 虚拟类(46)A.派生类 B.基类 C.抽象类 D. 虚拟类● 同一个函数名(或方法名)可以对应不同的函数体(或方法代码),该特性在面向对象技术中称为(47)。

(47)A. 单态 B. 信息隐藏 C. 信息开放 D. 多态●面向对象分析的主要任务是(48)。

(48)A.从宏观上描述一个软件系统应该如何组织B.将用户的需求用算法描述出来C.建立一个准确的、一致的系统模型以描述软件需要解决的问题D.对代码进行测试,以验证最终代码是否满足软件需求●瀑布模型表达了一种系统的、顺序的软件开发方法。

以下关于瀑布模型的叙述中,正确的是(49)。

(49)A.瀑布模型能够非常快速地开发大规模软件项目B.只有很大的开发团队才使用瀑布模型C.瀑布模型已不再适合于现今的软件开发环境D.瀑布模型适用于软件需求确定,开发过程能够采用线性方式完成的项目●一个软件系统的生存周期包含可行性分析和项目开发计划、需求分析、设计(概要设计和详细设计)、编码、测试和维护等活动,其中(50)是软件工程的技术核心,其任务是确定如何实现软件系统。

相关文档
最新文档