《计算机二级考试C语言练习题及答案.docx》由会员分享,可在线阅读,更多相关《计算机二级考试C语言练习题及答案.docx(5页珍藏版)》请在第壹文秘上搜索。
1、一、选择题1) .在软件设计中,不属于过程设计工具的是()A. PDLA.PDL(过程设计语言)B. PAD图C. N-S图D. DFD图正确答案:D答案解析:DFD(数据流图Data-Flow-Diagram)是描述数据处理过程的工具,是需求理解的逻辑模型的图形表示。它直接支持系统功能建模。在软件详细设计的过程阶段,要对每个模块规定的功能以及算法的设计给出适当的算法描述。常见的过程设计工具有:图形工具:程序流程图,N-S,PAD,HlP0;表格工具:判定表;语言工具:PDL(伪码)。2) .数据结构中,与所使用的计算机无关的是数据的()。A.存储结构B.物理结构C.逻辑结构D,线性结构正确答
2、案:C答案解析:数据的逻辑结构反映的是数据元素之间的逻辑关系,与使用的计算机无关。3) .设有定义:intx=2;以下表达式中,值不为6的是().2*x,x+=2B.x+,2*xD.x*=x+l正确答案:A答案解析:本题考查逗号表达式。逗号表达式的求解过程是:先求解表达式1,再求解表达式2,整个逗号表达式的值是表达式2的值,因此,选项A中值为4;选项B中,值为6。选项C中x*=x+l等价于x=x*(x+l),所以等于6;选项D与选项C等价,结果也为6。4) .在长度为64的有序线性表中进行顺序查找,最坏情况下需要比较的次数为()A. 63B. 64C.6D. 7正确答案:B答案解析:顺序查找又
3、称顺序搜索。顺序查找一般是指在线性表中查找指定的元素,其基本方法是:从线性表的第一元素开始,依次将线性表中的元素与被查找的元素进行比较,若相等则表示找到(即查找成功),若线性表中所有元素都与被查元素进行了比较但都不相等,则表示线性表中没有要找的元素(即查找失败)。如果线性表中的第一个元素就是要查找的元素,则只需要做一次比较就查找成功;但如果要查找的元素是线性表中的最后一个元素,或者要查找元素不在线性表中,则需要与线性表中所有元素进行比较,这是顺序查找的最坏情况,比较次数为线性表的长度。5) .下列特征中不是面向对象方法的主要特征的是()A.多态性B.标识惟一性C.封装性D.耦合性正确答案:D答
4、案解析:面向对象设计方法与面向过程设计方法有本质的不同,其基本原理是:使用现实世界的概念抽象地思考问题从而自然地解决问题。其特点包括:标识惟一性、多态性、封装性、模块独立性、继承和多态性好。二、程序填空题下列给定程序中,函数fun的功能是:将形参n中个位上为偶数的数取出,并按原来从高位到低位相反的顺序组成一个新数,作为函数值返回。例如,输入一个整数,函数返回值为64862。请在程序的下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。注意:部分源程序在文件BLANKl.C中。不得增行或删行,也不得更改程序的结构includeunsignedlongfun(unsignedlongn)u
5、nsignedlongx=0;intt;While(n)Il=n%10fund/f(t%2三=(Jj)/found/x2j/found/n=lll;Imum八Itnan()longn三-jjwhile(n999999991n0)pntf(Plwnput(0n1000000):);r*nf(%MfA11);ntf(nTheresultis:%Hn.fin(n);【参考答案】0(2)10*x【考点分析】本题考查:已知某数,如何求该数各个位数值,已知各个位数值,如何表示该数;除法运算。【解题思路】填空1:定义变量t用来存放某数的各个位数值,此处判断t是否为偶数,即对2求余结果是否为0。填空2:将I作
6、为X的个位数,原来X的各个位上升1位,即x=10x+lo填空3:每循环一次,通过除法运算,去掉数值最后一位。三、程序修改题下列给定程序中函数fun的功能是:将长整型数中各位上为奇数的数依次取出,构成一个新数放在I中。高位仍在高位,低位仍在低位。例如,当S中的数为时,t中的数为7531。请改正程序中的错误,使它能得出正确的结果。注意:部分源程序在文件MODlLC中,不得增行或删行,也不得更改程序的结构!*inludrmid(un(IonK,Iyt)Iintd;Ionf=Ii/found,t三0;while(O)Id三sIO;found,if(d%2三=O)Itd1t;1-10;I/10;IIman()Il*.t;pnntf(,nP)eaeenlcr;*);canf(wid,&n);fun(,l)iPrintf(ThrEMlhia:%ldn,t)(t【参考答案】t=0;if(d%2I=O)或if(d%2=l)【考点分析】本题考查:指针型变量作为函数参数;if语句条件表达式,结合奇偶数的表示方法来确定该表达式内容。【解题思路】(1)由函数定义可知,变量t是指针变量,所以对t进行赋初值。是不对的。因为t指向的是存放新数的变量,所以此处应给新数赋初值0,即。t=0)变量d表示数S各个位上的数,此处的if条件应为判断d是否为奇数。