《腾讯C语言笔试题.docx》由会员分享,可在线阅读,更多相关《腾讯C语言笔试题.docx(9页珍藏版)》请在优知文库上搜索。
1、腾讯C语言笔试题算法的时间复杂度是指OA)执行算法程序所需要的时间B)算法程序的长度C)算法执行过程中所需要的基本运算次数D)算法程序中的指令条数答案:C评析:所谓算法的时间复杂度,是指执行算法所需要的计算工作量。下列叙述中正确的是OA)线性表是线性结构B)栈与队列是非线性结构C)线性链表是非线性结构D)二叉树是线性结构答案:A评析:一般将数据结构分为两大类型:线性结构与非线性结构。线性表、栈与队列、线性链表都是线性结构,而二叉树是非线性结构。下面关于完全二叉树的叙述中,错误的是OA)除了最后一层外,每一层上的结点数均达到最大值B)可能缺少若干个左右叶子结点C)完全二叉树一般不是满二叉树D)具
2、有结点的完全二叉树的深度为Iog2n+1答案:B评析:满二叉树指除最后一层外每一层上所有结点都有两个子结点的二叉树。完全二叉树指除最后一层外,每一层上的结点数均达到最大值,在最后一层上只缺少右边的若干子结点(叶子结点)的二叉树。结构化程序设计主要强调的是0A)程序的规模B)程序的易读性C)程序的执行效率D)程序的可移植性答案:B评析:结构化程序设计主要强调的是结构化程序清晰易读,可理解性好,程序员能够进行逐步求精、程序证明和测试,以保证程序的正确性。在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是OA)概要设计B)详细设计C)可行性分析D)需求分析答案:D评析:需求分
3、析是对待开发软件提出的需求进行分析并给出详细定义,即准确地确定软件系统的功能。编写软件规格说明书及初步的用户手册,提交评审。数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是A)控制流B)加工C)数据存储D)源和潭答案:A评析:数据流图从数据传递和加工的角度,来刻画数据流从输入到输出的移动变换过程。数据流图中的主要图形元素有:加工(转换)、数据流、存储文件(数据源)、源和潭。软件需求分析一般应确定的是用户对软件的oA)功能需求B)非功能需求C)性能需求D)功能需求和非功能需求答案:D评析:软件需求分析中需要构造一个完全的系统逻辑
4、模型,理解用户提出的每一功能与性能要求,是用户明确自己的任务。因此,需求分析应确定用户对软件的功能需求和非功能需求。下述关于数据库系统的叙述中正确的是oA)数据库系统减少了数据冗余B)数据库系统避免了一切冗余C)数据库系统中数据的一致性是指数据类型的一致D)数据库系统比文件系统能管理更多的数据答案:A评析:由数据的共享自身又可极大地减少数据冗余性,不仅减少了不必要的存储空间,更为重要的是可以避免数据的不一致性。所谓数据的一致性是指在系统中同一数据的不同出现应保持相同的值。(9)关系表中的每一横行称为一个oA)元组B)字段C)属性D)码答案:A评析:在关系数据库中,关系模型采用二维表来表示,简称
5、“表二二维表是由表框架及表元组组成。在表框架中,按行可以存放数据,每行数据称为元组。(10)数据库设计包括两个方面的设计内容,它们是oA)概念设计和逻辑设计B)模式设计和内模式设计C)内模式设计和物理设计D)结构特性设计和行为特性设计答案:A评析:数据库设计可分为概念设计与逻辑设计。概念设计的目的是分析数据间内在语义关联,在此基础上建立一个数据的抽象模型。逻辑设计的主要工作是将ER图转换为指定的RDBMS中的关系模型。(11)请读程序:#includemaininta;floatb,c;SCanf(%2d%3P%4f,&a,&b,&C);printf(,na=%d,b=%eco%fn”,a,b
6、,C);若运行时从键盘上输入98765432101,则上面程序的输出结果是A)a=98,b=765,c=4321B)a=l0zb=432,c=8765C)a=98,b=765,000000,c=4321.000000D)a=98,b=75.0,c=4321.0答案:C评析:SCanf把用户从键盘录入的数字的第1、2位存入整型变量a;把第3、4、5位存入单精度实型变量b,把第6、7、8、9位存入单精度实型变量c,用户录入的第10位被SCanf遗弃。这时变量a、b、c的值分别为:98、765.0000004321.000000o(12)一个良好的算法由下面的基本结构组成,但不包括。A)顺序结构B)
7、选择结构C)循环结构D)跳转结构答案:D评析:1966年,Bohra和JaCoPini提出T以下三种基本结构,用这三种基本结构作为表示一个良好算法的基本单元:1、顺序结构;2、选择结构;3、循环结构。(13)请选出以下程序的输出结果。#includesub(xzy,z)i11tx,y,星符号z:星符号z=y-x;main(inta,b,c;sub(10,5,&a);sub(7,a,&b);sub(a,b,&C);printf(,%d,%d,%dn,a,b,C);)A)5,2,3B)-5,-12z-7C)-5,-12z-17D)5,-2,-7答案:B评析:SUb函数的作用是将形参y和X的差赋给了
8、Z指向的那个内存地址,所以在SUb(Io,5,&a/l,10和5属于值传递,a是属于地址传递,也就是a与Z指向了同一个存储单元,在执行函数后,a的值随星符号Z变化,所以此次函数被调用后,a的值为y-x=-5,同理可知,在sub(7,a,&b)后,b的值发生变化,其值为-5-7=12,在sub(a,b,&C)后,c的值发生变化,其值为-12-(-5)=-7(14)下面程序在屏幕上的输出是omainprintf(,abbbcn);)A)abbbcB)acC)abcD)abc答案:B评析:C语言中允许使用一种特殊形式的字符常量,、就是以一个开头的字符序列,这样的字符称为“转义字符二常用的转义字符有:
9、n,换行;3水平制表;b,退格;r,回车。(15)若X是整型变量,pb是基类型为整型的指针变量,则正确的赋值表达式是OA)pb=&x;B)pb=x;C)星符号pb=&x;D)星符号Pb二星符号X答案:A评析:选项A将变量X的地址赋给指针变量pb,使Pb指向X选项B是将X的值当作地址赋给指针pb,Db指向一个地址等于X值的内存单元;选项c将X的地址赋给指针pb指向的地址等于X的内存单元。(16)设整型数i=5,则Printf(d”,i+i);的输出为。A)10B)llC)12D)语法错误答案:D评析:C语言中有基本的算术运算符(+、星符号、/)还包括自增自减运算符(+、-),在C语言解析表达式时
10、,它总是进行贪婪咀嚼,这样,该表达式就被解析为i+i,显然该表达式不合C语言语法。(17)若要用下面的程序片段使指针变量p指向一个存储整型变量的动态存储单元i11t星符号p;P=malloc(sizeof(im);则应填入OA)intB)intC)(星符号int)D)(int星符号)答案:D评析:不论P是指向什么类型的指针变量,都可以通过强制类型转换的方法使之类型一致,强制类型转换的格式为(数据类型+)。(18)下面程序输出的结果是oMain(inti=5,J=9,x;x=(=jPi:(j=7);Printf(n%d,%d”,l,J);)A)5,7B)5z5C)语法错误D)7,5答案:A评析:条件表达式的一般形式为:表达式I?表达式2:表达式3;先求解表达式1,若为真则求解表达式2;若表达式I的值为假,则求解表达式3。本题中先判断3=j,不等,执行j=7;然后执行x=7。故本题为A。