下列数组定义中,正确的是()A、inta[10]B、intn=10,a[n]C、intN=10;inta[N]D、intn;scanf(“%d”,n);inta[n]

题目

下列数组定义中,正确的是()

  • A、inta[10]
  • B、intn=10,a[n]
  • C、intN=10;inta[N]
  • D、intn;scanf(“%d”,&n);inta[n]
参考答案和解析
正确答案:A
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

以下程序的输出结果是 voidreverse(inta[],intn) {inti,t; for(i=0;i{t=a[i];a[i]=a[n-

以下程序的输出结果是

void reverse(int a[],int n)

{ int i,t;

for(i=0;i A.22

B.10

C.34

D.30


正确答案:A
1+2+9+10=22

第2题:

以下一维数组a正确的定义是()

A.inta(5)

B.intn=5,a[n]

C.inta[SZ]其中SZ为符号常量

D.inta{5}


正确答案:C

第3题:

若有以下调用语句,main(){…inta[50],n;…fun(n,}则不正确的fun函数的首部是()

A、voidfun(intm,intx[])

B、voidfun(ints,inth[41])

C、voidfun(intp,int*s)

D、voidfun(intn,inta)


参考答案:C

第4题:

有如下类定义: classAA{ inta: public: AA(intn=0):a(n)() }; classBB:publicAA{ pubilc: BB(intn)____ }; 其中横线处缺失部分是()。

A.:a(n){}

B.:AA(n){}

C.{a(n);}

D.{a=n;}


正确答案:B
B。【解析】需要实现父类构造函数。

第5题:

有下列程序: #include<stdi0.h> #include<stdlib.h> intfun(intn) {int*P; p=(int*)malloc(sizeof(int)); *P=n;return*P; } voidmain( ) {inta; a=fun(10);printf("%d\n",a+fun(10));} 程序的运行结果是( )。

A.0

B.10

C.20

D.出错


正确答案:C
C。【解析】本题考查指针与函数的调用。a+fun(10)相当于fun(10)+fun(10),故结果为20。两次调用fun函数,返回值指向不同的内存单元,不会存在内存冲突的问题,也就不会走错。

第6题:

以下为一维整型数组a的正确说明是()。

A.inta(10);

B."intn=10,a[n];"

C."intn;scanf(""%d"",n);"

D."#defineSIZE10;inta[SIZE];inta[n];"


正确答案:D

第7题:

有以下程序includestdio.hintf(intt[],intn);main(){inta[4]={1,2,3,4},s;s=f(a,4);printf(“%d\n“,s);}intf(intt[],intn){if(n0)returnt[n-1]+f(t,n-1);elsereturn0;}程序运行后的输出结果是()。

A、4

B、10

C、14

D、6


参考答案:B

第8题:

使用VC++6.0打开考生文件夹下的源程序文件2.cpp。阅读下列函数说明和代码,完成空出部分的程序。实现函数sort(intA[],intn),用冒泡法对数组数据进行排序。所谓冒泡法,就是每次把相邻的两个数交换,较大的数交换到后面。这样下标从0到n-1的数与其后面相邻的数交换,可以把最大的数交换到数组的末端。进行n次下标从0到n-1的交换,则数组变成有序的,并且按由大到小排序。 注意:不能修改和删除程序的其他部分,也不能修改程序的结构。 试题程序: include<iostream.h> defineN10 voidsort(intA[N],intn) { } intmain { intA[N]={1,50,17,69,87,42,90,-6,O,-11}; sort(A,10); for(inti=0;i<sizeof(A)/sizeof(int);i++) { cout<<A[i]<<; } cout<<endl; return0; }


正确答案:
inti,j,k,t;
for(i=0;i(n-1;i++)
{
for(k=i,j=i+1;j<n;j++)
if(A[k]<A[j])//如果前面的比后面的小则需要
交换
k=j;
if(k!=i)//交换
{
t=AEi3;
A[i]=A[k];
A[k]=t;
}
【解析】以数组“A[]={3,8,7,6,5,0,1,2,9,4},,为例来说明具体的排序过程,第一次选择:第一步,从A[0]-A[9]中找最大值max及下标k,max=9,k=8;第二步,交换a[0]与最大值a[8]的值;第一次结束后a[0]已存放了最大值,下一次比较就不必再经过它了,而从a[1]开始,如此循环。从例中可以看出10个元素要进行9次比较,n个元素要进行n-1次比较。设置两层循环,外层循环变量i从0到n-1,内层循环变量从i开始到n-1,在内层循环中找最大值,如果最大值的下标k和i不同,则交换,实现选择法排序。在内层循环体内,如果最大值的下标k和i不同,则用一个临时变量记录第i个元素,然后将第k个元素赋值给第i个元素,临时变量值赋给第k个元素,如此完成两个元素的交换。

第9题:

有下列程序: #include<stdi0.h> voidfun(int*S,intn1,intn2) { inti,j,t; i=n1;j=n2 while(i<j){t=s[i];s[i]=s[j];s[j]=t;i++;j --;} } voidmain( ) { inta[10]={1,2,3,4,5,6,7,8,9,0),k; fun(a,0,3);fun(a,4,9);fun(a,0,9); for(k=0;k<10;k++)printf(”%d”,a[k]);printf ("\n"); } 程序的运行结果是( )。

A.0987654321

B.4321098765

C.5678901234

D.0987651234


正确答案:C
C。【解析】本题定义一个一维数组并赋初值,接着调用fun,功能是使数组中的元素逆序,当调用fun(a,0,3),将实参传递给形参实现数组a中a[0]至a[3]这4个元素逆序;同理调用fun(a,4,9)是将上步排列好的a数组中a[4]至a[9]这6个元素逆序;调用fun£a,0,9)是将数组中a[o]至a[9]这10个元素再逆序,再用printf函数输出结果为5678901234,故选项C正确。

第10题:

有如下类声明: classXA{ intx: public: XA(intn){x=n;} }; classXB:publicXA{ inty; oublic: XB(inta,intb); }; 在构造函数XB的下列定义中,正确的是( )。

A.XB::XB(inta,intb):x(a),y(b){}

B.XB::XB(inta,intb):XA(a),y(b){}

C.XB::XB(inta,intb):x(a),XB(b){}

D.XB::XB(inta,intb):XA(a),XB(b){}


正确答案:B
B。【解析】C++中派生类构造函数的一般语法规则为<派生类名>::<派生类名>(<参数表>):<基类1>(<参数表1>),…,<基类名n>(<参数表n>),<子对象l>(<子对象参数表1>,…<子对象m>(<子对象参数表m>){<派生类新增成的初始化语句>;}。

更多相关问题