计算机二级

有以下程序:include using namespace std;void fun(int i,int j){ cout有以下程序: #include <iostream> using namespace std; void fun(int i,int j) { cout<<(i+j)<<end1; } void fun(int i) { cout<<i++<<end1; } int main() { int a=1; fun(A) ; return 0; } 该程序执行后的输出结果是( )。A.1B.

题目
有以下程序:include using namespace std;void fun(int i,int j){ cout<<(i+j)<

有以下程序: #include <iostream> using namespace std; void fun(int i,int j) { cout<<(i+j)<<end1; } void fun(int i) { cout<<i++<<end1; } int main() { int a=1; fun(A) ; return 0; } 该程序执行后的输出结果是( )。

A.1

B.2

C.3

D.4

如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下列程序段的输出结果是 include void fun(int * X,int * y) {cout < < * X < <

下列程序段的输出结果是 #include<iostream.h> void fun(int * X,int * y) { cout < < * X < < * y; * X=3; * y=4; } void main( ) { int x=1,y=2; fun(&y,&x); cout < < X < < y < < end1; }

A.2143

B.1212

C.1234

D.2112


正确答案:A
解析:在fun函数中,x接收的是main函数中y的地址,所以*x值为2,同样,*y值为1,所以第1次输出的是21,第2次改变*x的值等同于改变y的值,改变*y的值也即改变x的值,所以第2次输出的是43。注意:C++语言中函数的传参方式中关于指针的应用。

第2题:

下列程序运行后的输出结果是()。 include void fun(int,int,int*); void main() { i

下列程序运行后的输出结果是( )。 #include<iostream.h> void fun(int,int,int*); void main() { int x,y,z; fun(5,6,&x); fun(7,x,&y); fun(x,y,&z); cout<<x<<","<<y<<","<<z<<end1; } void fun(int a,int b,int *c) { b+=a; *c=b-a; }

A.5, 5, 5

B.6, 6, 6

C.5, 6, 7

D.7, 7, 7


正确答案:B
解析:由程序中的main函数入手,分别调用fun函数,第一个调用中x参数为引用地址,调用后x的值为6,因为参数为地址,所以第二个调用中的x参数值为6,调用后y的计算结果为6。同理, z在第三个函数调用后z的值为6。

第3题:

下面程序的运行结果是includevoid fun(int*a,int*b){int X= *a;* a= *b;*b=X;cout<

下面程序的运行结果是 #include<iostream,h> void fun(int*a,int*b) { int X= *a; * a= *b; *b=X; cout<< *a<< *b<<" "; void main() int x=1, y=2; fun(&x,&y); cout<<X<<y<<end1; }

A.12 12

B.12 21

C.21 12

D.21 11


正确答案:D
解析:本题考查的是指针和引用,函数fun完成把x和y互换的操作。

第4题:

分析以下程序的执行结果【】。include class S{ int A[10]; public: int &operato

分析以下程序的执行结果【 】。

include <iostream. h>

class S{

int A[10];

public:

int &operator () (int);

};

int &S: :operator() (int x) {

return A[x];

}

void main() {

S a;

int i,j;

for (i=0; i<10; i++)

a(i)=i*2;

for (i=0; i<10; i++)

cout<<a(i)<<" ";

cout<<end1; }


正确答案:0 2 4 6 8 10 12 14 16 18
0 2 4 6 8 10 12 14 16 18

第5题:

给出以下程序的执行结果【】。 include using namespace std; int n=1; void Fun(); int

给出以下程序的执行结果【 】。

include <iostream>

using namespace std;

int n=1;

void Fun();

int main ()

{

n++;

Fun ( );

if (n>0)

{

int n=5;

cout<<"Block: n="<<n<< ", ";

}

cout<< "Main: n="<<end1;

return 0;

}

void Fun ( )

{

int n=10;

cout<<"Fun: n="<<n<<",";

}


正确答案:Fun:n=10Block:n=5Main:n=2
Fun:n=10,Block:n=5,Main:n=2 解析:变量的作用域是程序中变量有效的区域,它是变量的一个重要特征。在题中,变量n有3种身份,其一是作为全局变量的n,其二是作为if语句块内局部变量的n,其三是函数内部局部变量的n。程序最后要求输出各个作用域内n的值。

第6题:

以下程序的正确运行结果是()。includeint fun(int);void main(){int a=2,i;for(i=0;

以下程序的正确运行结果是( )。 #include<iostream.h> int fun(int); void main() { int a=2,i; for(i=0;i<3;i++) cout<<fun(a)<<end1; cout<<end1; } int fun(int a) { int b=0; static int c=3; b++;c++; return(a+b+c); }

A.4,5,6

B.6,7,9

C.7,8,9

D.7,7,7


正确答案:C

第7题:

有以下程序: include int i=0;void fun(){{static iht i=1; std::cout<

有以下程序: # include <iostream> int i=0; void fun() {{static iht i=1; std::cout<<i++<<','; } std:: cout<<i<<','; } int main() { fun(); fun(); return 0; }程序执行后的输出结果是______。

A.1,2,1,2,

B.1,2,2,3,

C.2,0,3,0,

D.1,0,2,0,


正确答案:D
解析:程序中,static声明了一个局部静态变量,在程序运行期间一直存在,第二次调用函数改变了该值。全局变量一直未改变。

第8题:

有以下程序: include include usingnamespacestd; intmain() {intarrays

有以下程序: #include <iostream> #include <cstdlib> using namespace std; int main() { int arraysize; int *array; cout<<"Please input the size of the array:"; cin>>arraySiZe; array=new int[arraysize]; if(array==NULL) { cout<<"allocate Error\n"; exit(1); } for(int i=0;i<arraysize;i++) array[i]=i*i; int j; cout<<"which element you want to check:"; cin>>j; cout<<array[j]<<end1; return 0; } 执行程序输入:10<空格>5,则输出结果为( )。

A.allocate Error

B.1

C.0

D.25


正确答案:D
解析:程序中利用new()申请动态分配数组。利用for循环给数组array赋值。最后输出想要检查元素的值。程序输10,即数组array元素个数为10。程序输入5,即检查元素array[5]的值。由for循环的赋值运算可知array[5]的值为25,所以程序最后输出25。

第9题:

下面程序的运行结果是includevoid fun(int * a,int * b){ int x= * a; * a = * b;*

下面程序的运行结果是 #include<iostream.h> void fun(int * a,int * b) { int x= * a; * a = * b; * b=x; cout <<*a<< *b<<""; } void main( 0 { int x =1,y =2; fun(&x,&y); cout<< x << y <<end1; }

A.12 12

B.12 21

C.21 12

D.21 21


正确答案:D
解析:本题考查的是指针和引用,函数 fun完成把x和y互换的操作。