已知数据表A中每个元素距其最终位置不远,为节省时间,应采用的算法是
A:堆排序 B:直接插入排序 C:快速排序 D:直接选择排序
下列不属于结构化分析的常用工具的是
A:数据流图 B:数据字典 C:判定树 D:PAD图
对建立良好的程序设计风格,下面描述正确的是
A:程序应简单、清晰、可读性好 B:符号名的命名只要符合语法 C:允分考虑程序的执行效率 D:程序的注释可有可无
以下程序的输出结果是
#include<iostream.h>
void main( )
int i,j,x=0;
for(i=0;i<2;i++)
X++;
for(j=0;j<3;j++)
if(j%2)continue;
x++;
X++;
cout < < "X=" < < x;
A:x=4 B:x=8 C:x=6 D:x=12
下面程序的结果是
#include<iostream.h>
class A
public:
A( )cout<<"construtA" <<endl;
virtual ~A( ) cout << "destructA" <<endl;;
class B:public A
;
class C://public A
;
class D://public B,public C
;
void main( )
Dd;
A:constructA B:constructA C:constmctA D:constmctA
destructA constructA constmctA constructA
destructA constructA constructA
destructA destructA constructA
destructA destmctA
destmctA destructA
destmctA
destructA
下列程序的运行结果是
#include<iostram.h>
classLocation
private:
int X,Y;
public:
void init(int=0, int=0) ;
void valueX(int val)X=val:
int valueX( )return X;
void valueY(int val)Y=val;
int valueY( )returnY;;
void Location∷init(int initX,int initY)
X=initX;
Y=initY;
void main( )
LocationA,B;
A.init( );
A.ValueX(5);
cout <<A.ValUeX( ) <<endl<<A,valueY( ) <<endl;
B.init(6,2);
B.valueY(4) ;
cout<<B.valueX( ) <<endl<<B.valueY( ) <<endl;
A:5
0
6
4 B:0
0
6
4 C:5
0
6
2 D:0
0
6
2
下列程序是用来判断数组中特定元素的位置所在,则输出结果为
#include<conio.h>
#include<iostream.h>
in[fun(int * s,int t,int * k)
int i;
*k=0;
for(i=0;<t;i++)
if(s[*k]<s[i]) *k=i;
return s[*k];
void main( )
int a[10]=876,675,896,101,301,401,980,431,451,777,k;
fun(a,10,&k);
cout < < k < <‘,’ < < a[k];
A:7,431 B:6 C:980 D:6,980
冒泡排序算法在最好的情况下的元素交换次数为 【1】 。
在最坏情况下,堆排序需要比较的次数为 【2】 。
O(nlog2n)
若串s="MathTypes",则其子串的数目是 【3】 。