假定K是一个类名,并有定义“K k; int j;”,已知K中重载了操作符 (),且语句“j=k(3);”和“k(5)=99;”都能顺利执行,说明该操作符函数的原形只可能是()。
A.K operator () (int);
B.int operator ()(int&);
C.int & operator ()(int);
D.K &operator()(int);
第1题:
设i,j,k均为int型变量,则执行完for(i=0,j=10;i<=j;i++,j-- k=i+j;语句后,k的值为【8】 。
第2题:
若类A和类B的定义如下
class A
{
int i,j;
public:
int geti( )
{
return i;
}
};
class B:public A
{
int k:
public:
void make( )
{
k=i*j;
}
};
则上述定义中非法的语句是
A.k=i*j
B.int k;
C.return i;
D.void make()
第3题:
下面程序段的执行结果为( )。 int i=3,j=0,k=0; for(;i>0;--i) { ++k; do { ++j; if (i!=j) break; ++k; }while(j<5); } printf("i=%d j=%d k=%d\n",i,j,k);
A.i=0 j=4 k=12
B.i=0 j=5 k=5
C.i=0 j=4 k=4
D.i=0 j=3 k=3
第4题:
已知i、j、k为int型变量,若要从键盘输入2、3、4<CR>,使I、j、k的值分别为2、3、4,下列正确的输入语句是( )。
A.scanf("%3d,%3d,%3d",&i,&j,&k);
B.scanf("%d,%d,%d",&i,&j,&k);
C.scanf("%d%d%d",&i,&j,&k);
D.scanf("i=%d,j=%d,k=%d",&i,&j,&k);
第5题:
若类A和类B的定义如下: class A { int i,j; public: int geti() { return i; } }; class B: public A { int k; public: void make() { k=i*j } }; 则上述定义中
A.k=i*j;
B.int k;
C.return i;
D.void make()
第6题:
有以下程序
#include<stdio.h>
void fun(int *s)
{ static int j=0;
do { s[j]=s[j]+s[j+1]; )while(++j<2);
}
main( )
{ int k,a[10]={1,2,3,4,5);
for(k=1;k<3;k++)fun(a);
for(k=0;k<5;k++)printf(”%d”,a[k]);
printf("\n");
}
程序运行后的输出结果是
A) 12345
B)23445
C)34756
D) 35745
第7题:
若类A和类B的定义如下: class A { int i,j; public: void get(); //… } ; class B:A//默认为私有派生 { int k; public: void make(); //… }; void B::make() { k=i*j; } 则上述定义中, ( )是非法的表达式。
A.void get();
B.int k;
C.void make();
D.k=i*j;
第8题:
以下程序的输出结果是 void fun(int*s) { static int j=0; do s[j]+=s[j+1]; while(++j<2);} main() { int k,a[10]={1,2,3,4,5}; for(k=1;k<3;k++)fun(a); for(k=0;k<5;k++)printf("%d",a[k]);}
A.34756
B.23345
C.35745
D.12345
第9题:
阅读以下函数说明和C语言函数,将应填入(n)处的字句写在对应栏内。
[说明]
函数int psort(int a[],int n)实现将含n个整数的数组a[]的不同元素按从小到大顺序存于数组a[]中。实现方法是从未确定的元素列中找到最小元素并将a[]的第i最小元素交换至a[i]位置。如该最小元素比已确定的最后一个最小元素大,则将它接在已确定的元素序列的后面;否则,忽视该元素。
[C函数]
int psort(int a[],int n)
{int i,J,k,P;
for(i=0,k=0;i<(1);i++){
for(j=i+1, (2) ;j<n; j++)
if(a[p]>a[j])
p=j;
if(p!=i){
t=a[p];
a[p]=a[i];
a[i]=t;
}
if( (3) ) k++;
else if( (4) <a[i])
(5)=a[i];
}
return k;
}
int a[]={5,7,5,6,4,3,4,6,7};
main()
{int k,n;
for(k=0;k<(Sizeof a)/Sizeof(int);k++)
printf("%5d",a[k]);
printf ("\n\n");
n=psort(a,(sizeof(a))/sizeof(int));
for(k=0;k<n;k++)
printf("%5d",a[k]);
printf("\n\n");
}
第10题:
设j和k都是int类型,则for循环语句(). for(j=0,k=0;j<=9&&k!=876;j++) scanf("%d",&k);
第11题:
若变量已正确定义且k的值是4,计算表达式(j=--k)后,()是正确的。
第12题:
设j和k都是int类型,则for循环语句 for(j=0,k=-1;k=1;j++,k++) printf("****/n");().
第13题:
以下程序段是函数返回a所指数组中最大的值所在的下标值,横线处的语句为( )。 fun(int*a, int n) { int i,j=0,k; k=j; for(i=j;i<n;i++) if[a[i]>a[k])______; return(k); }
A.k=i
B.k=j
C.i=j
D.i=n
第14题:
阅读下列说明和流程图,将应填入(n)处的语句写在对应栏内。
【说明】
下列流程图用于从数组K中找出一切满足:K(I)+K(J)=M的元素对(K(I),K(J))(1≤I≤J≤N)。假定数组K中的N个不同的整数已按从小到大的顺序排列,M是给定的常数。
【流程图】
此流程图1中,比较“K(I)+K(J):M”最少执行次数约为(5)。
第15题:
若类A和类B的定义如下: class A { int i,j; public: int geti () { return i; } }; class B : public A { int k; public: void make () { k=i*j; } }; 则上述定义中非法的语句是
A.k=i*j;
B.int k;
C.return i;
D.void make()
第16题:
有以下程序#include <stdio.h>void fun(int s[]){ static int j=0; do s[j]+=s[j+1]; while(++j<2);}main(){ int k,a[10]={1,2,3,4,5}; for(k=1;k<3;k++) fun(a); for(k=0;k<5;k++) printf("%d",a[k]);}程序的运行结果是A.34756 B.23445C.35745 D.12345
第17题:
请读程序: # include<stdio.h> void fun(int * s) { static int j=0; do s[j]+=s[j+1] while( + + j<2); } main( ) { int k,a[10]={l,2,3,4,5}; for(k=l;k<3;k+ +)fun(a); for(k=0;k<5;k++)prinf("%d",a[k]); } 上面程序的输出结果是 ( )
A.34756
B.23445
C.35745
D.12345
第18题:
已知i、j、k为int型变量,若从键盘输入:1,2,3<回车>,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是
A.scanf(“%2d%2d%2d”,&i,&j,&k);
B.scanf(“%d%d%d”,&i,&j,&k);
C.scant(“%d,%d,%d”,&i,&j,&k);
D.scanf(“i=%d,j=%d,k=%d”,&i,&j,&k);
第19题:
下列语句序列执行后,k的值是 ( ) int j=8,k=15; for(int i=2;i!=j;i++) {j-=2;k++;}
A.18
B.15
C.16
D.17
第20题:
设i、j、k均为int型变量,则执行完for(i=0,j=10;i<=j;i++,j--) k=i+j;语句后,k的值为______。
第21题:
下面是一个对整数数组A中的前n个元素求最小值的C程序,函数返回最小元素的位置。 Int minValue(int A[],int n){ int k=0: for(int j=1;j<=n-1;j++) if(A[j]<a[k])k=j; return k: 当n=4时,程序中可能的执行路径数为______。
A.2
B.4
C.8
D.16
第22题:
若变量已正确定义且k的值是4,计算表达式(j=++k)后,()是正确的。
第23题:
若变量已正确定义且k的值是4,计算表达式(j=k++)后,()正确的。
第24题:
设j和k都是int类型,则for循环语句() for(j=0,k=0;j<=9&&k!=876;j++)( j<=9,k!=876) scanf("%d",&k)循环;