正确答案: A
log2n
题目:在长度为n的有序线性表中进行二分查找,需要的比较次数为( )。
解析:
在长度为n的有序线性表中进行二分查找,需要的比较次数为log2n。
查看原题查看所有试题
学习资料的答案和解析:
[单选题]下面程序的输出结果为( )。 struct st {int x;int *y;}*p; int dt[4]={10,20,30,40); struct st aa[4]={50,&dt[0],60,&dt[1],70,&dt[2],80,&dt[3]}; main() { p=aa; printf("%d\n",++p->x); printf("%d|n",(++p)->x); printf("%d\n",++(*p->y)); }
51 60 21
解析:解析:第1个输出语句中由于->的优先级高于++,因此先取结构体的分量x,再对x的值加1,再输出。p的初值为结构体数组aa的首地址即a[0]的地址,a[0]的x分量值为50,加1后输出51。第2个输出语句中++p被括号括起来,括号的优先级与->相同,自左至右结合,因此先对p加1,再取p所指向的元素的x分量的值。p加1后p指向数组元素a[1],a[1]的x分量的值为60,输出60。第3个输出语句中括号的优先级高于++,因此先求括号中表达式的值,又由于->的优先级高于*,所以先取p所指向的数组元素的y分量的值,p所指向的元素为a[1],y分量的值为&dt[1]。&dt[1]是一个存储单元的地址,是数组dt第2个元素的地址值,再取该存储单元中的值为20,最后对20加1,输出21。选项C为所选。
[单选题]在软件开发中,需求分析阶段产生的主要文档是( )
软件需求规格说明书
解析:解析:软件的生命周期分为计划、开发和运行3个时期。其中计划期包括问题定义和可行性研究。运行的任务是软件维护。开发期包括分析、设计和实施:分析即为需求分析。需求分析的最终结果是生成软件需要规格说明书,可以为用户、分析人员和设计人员之间的交流提供方便。
[单选题]执行下列程序时,会产生什么异常 public class Test { public static void main(String args[ ])( int d=101; int b=220; long a=321; System.out.println((a-B) /(a-b-D) ); } }
ArithmetieException
解析:解析:本题考查异常的概念。首先应该掌握题目选项中给出的都是什么类型的异常。选项A是当访问数组中非法元素时引发,出现数组负下标异常。选项B是格式化数字异常。选项C是算术异常,如程序触发分母为0,或用0取模时出现。选项D是文件已结束异常。当Java执行这个算术表达式的时候,由于求模运算的分母是a-b-d=0,就会构造一个ArithmeticException的异常对象来使程序停下来并处理这个错误的情况,在运行时抛出这个异常。默认的处理器打印出Exception的相关信息和发生异常的地点。
[单选题]有如下程序 int func(int a, int b) { return(a+b); } main() { int x=2,y=5,z=8,r; r=func(func(x,y),z); printf("%d\n",r); } 该程序的输出结果是______。
15
解析:解析:调用函数func(x,y),返回x+y,即7;再调用函数func(7,z),返回7+z,即15。
[单选题]定义如下枚举类型:enum Number{one=l,tow=2,four=4,eight=8},则下列语句正确的是( )。
枚举类型Number的取值范围是0~15