计算机二级

以下程序执行后的输出结果是include.using namespace std;void try(int,int,int,int)以下程序执行后的输出结果是 #include<iostream>. using namespace std; void try(int,int,int,int); int main() { int x,y,z,r; x=1; y=2; try(x,y,z,r); cout<<r<<end1; return 0; } void try(int x,int y, int z,in

题目
以下程序执行后的输出结果是include.using namespace std;void try(int,int,int,int)

以下程序执行后的输出结果是 #include<iostream>. using namespace std; void try(int,int,int,int); int main() { int x,y,z,r; x=1; y=2; try(x,y,z,r); cout<<r<<end1; return 0; } void try(int x,int y, int z,int r) { z = x+y; x = x*x; y = y*y; r = z+x+y; }

A.18

B.9

C.10

D.不确定

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

第1题:

下面程序的输出结果是【】。 include using namespace std; int d=1; fun(int p){ stati

下面程序的输出结果是【 】。

include <iostream>

using namespace std;

int d=1;

fun(int p){

static int d = 5;

d+ =p;

cout<<d;

return (d) ;

}

void main ( ) {

int a =3;

cout<<fun ( a + fun (d) )<<endl;

}


正确答案:61515
61515 解析:先调用fun(d),d=1执行,局部静态变量d的值为6,输出6,返回值为6;再调用 fun(a+fun(d)),即fun(9)执行,静态局部变量的值为15,输出15,返回值为15;最后再执行 main方法中的输出语句,输出fun(a+fun(d))的值15。所以程序输出结果为61515。

第2题:

以下程序执行后的输出结果是( )。include usingnamespacestd;void try(int,int,int,in

以下程序执行后的输出结果是( )。 #include <iostream> using namespace std; void try(int,int,int,int); int main ( ) { int x,y,z,r; x=1; y=2; try(x,y,z,r); cout<<r<<end1; return 0; } void try(int x,int y, int z,int r) { z = x+y; x = X*X; y = y*y; r = z+x+y; }

A.18

B.9

C.10

D.不确定


正确答案:D
解析:本题常见的错误解答是:把x=1,y=2代入到函数try中,逐步计算出r=8。最后得到r的输出值是8。下面是正确解答。根据程序逐步分析:①程序中定义了一个名为try的void型函数,即函数try()没有任何返回值。②而try()函数在主函数中是以一条独立语句的方式被调用的,且主函数最后输出变量r的值。③但在主函数中,并没有对变量r赋值。④在C++语言中,数据只能从实参单向传递给形参,称为按值传递。也就是说,当简单变量作为实参时,用户不能在函数中改变对应实参的值。所以,虽然在函数try()中,r的值为8,但它并不能传递给实参,当然最终的输出肯定是不确定的随机数了。

第3题:

有以下程序: include using namespace std; class sample {int x; public:void setx(

有以下程序:

include <iostream>

using namespace std;

class sample

{

int x;

public:

void setx(int i)

{

x=i;

}

int putx ()

{

return x;

}

};

int main ( )

{

sample *p;

sample A[3];

A[0] .set>:(5);

A[1] .setx(6);

A[2] .setx(7);

for (int j=0;j<3;j++)

{

p=&A[j];

cout<<p->putx () <<", ";

}

cout<<end1;

return 0;

}

执行后的输出结果是【 】。


正确答案:567
5,6,7 解析:本题考核对象指针与对象数组的应用。主函数中定义对象数组A,然后调用各自的setx()函数赋值,最后通过for循环输出各自内部变量,所以程序最后输出5,6,7。

第4题:

有以下程序: include using namespace std; int main() {int i=010,j=10;cout<<(++i)

有以下程序:

include <iostream>

using namespace std;

int main()

{

int i=010,j=10;

cout<<(++i)<<","<<i--<<end1;

return 0;

}

则该程序运行后的输出结果是【 】。


正确答案:910
9,10 解析:本题考核自增运算符和自减运算符的使用以及常量的表示形式。程序中i的值是八进制,代表十进制中的8,++i是在语句运算前自身加1,而j--是在语句运算结束后减1。

第5题:

以下程序的输出结果是【】。 include using namespace std; void fun() {static int a=0

以下程序的输出结果是【 】。

include <iostream>

using namespace std;

void fun()

{

static int a=0;

a+=2;

cout<<a;

}

int main()

{

int CC;

for(CC=1;cc<4;CC++)

fun();

cout<<end1;

return 0;

}


正确答案:246
246 解析:本题考核函数调用和静态变量。在主函数中通过一个for循环调用了3次fun()函数。第1次调用fun()函数时,a的初始值为0,执行语句“a+=2;”后, a的值为2,输出2;第2次调用时,a的初始值为2,执行语句“a+=2;”后,a的值为4,最后输出4:第3次调用时,a的初始值为4,执行语句“a+=2:”后,a的值为6,最后输出6。

第6题:

若有以下程序: include using namespace std; int f(int x, int y) {return(y-x)*x;

若有以下程序:

include <iostream>

using namespace std;

int f(int x, int y)

{

return (y-x)*x;

}

int main()

{

int a=3,b=4,c=5,d;

d=f(f(a,b) ,f(a,c) );

cout<<d<<<end1;

return 0;

}

执行后的输出结果是【 】。


正确答案:9
9 解析:本题考核函数的嵌套调用。在主函数中执行语句“d=f(f(a,b) ,f(a,c));”调用了3次f()函数:调用f(a,b) 得到的值为3,调用f(a,c) 得到的值为6,调用f(3,6)得到的值为9。

第7题:

以下程序的输出结果为【】。 include using namespace std; void initialize(int printNo

以下程序的输出结果为【 】。

include<iostream>

using namespace std;

void initialize(int printNo,int state=0);

void initialize(int printNo=l,int state);

int main()

{

initialize();

return 0;

}

void initialize(int printNo,int state)

{

cout<<printNo<<","<<state<<end1;

}


正确答案:10
1,0 解析:本题考核带有默认值的函数,本题中函数initialize()进行了两次函数原型的说明,使本来不带默认值的形参带上默认值。由于主函数中调用initialize()时没有给定实参,所以函数自动调用其参数默认值,输出1和0。

第8题:

程序的输出结果是【 】。 include using namespace std; class A{ int x; public: A(int

程序的输出结果是【 】。

include <iostream>

using namespace std;

class A{

int x;

public:

A(int x=1):x(x){cout<<x;}

};

void main(){

A a,b(2),c(3);

}


正确答案:123
123 解析:a对象使用和默认的构造函数,b对象使用2来初始化对象c对象使用3来初始化对象,输出相应的值后,结果变为123。

第9题:

下列程序的输出结果是【】。 include using namespace std; int main(){int data=1;int

下列程序的输出结果是【 】。

include <iostream>

using namespace std;

int main()

{

int data=1;

int &r = data;

data+=5;

r+=5;

cout<<data<<end 1;

return 0;

}


正确答案:11
11 解析:本题考核引用的概念和使用。C++的引用是一种赋值、发送和返回复杂数据结构的方法,应用这种方法,系统不需要负担额外的开销,节省内存空间。在程序中对引用的存取都是对它所引用的变量的存取。题中r为data的引用,所以对r的操作等于对data的操作,所以最后data的值为11。

第10题:

以下程序的输出结果是【】。 include using namespace std; int main(){ int sum,i; for(

以下程序的输出结果是【 】。

include<iostream>

using namespace std;

int main(){

int sum,i;

for(sum=0,i=1;i<5;i++)sum+=i;

cout<<sum<<endl;

return 0;

}


正确答案:10
10 解析:本题程序实现的是计算1+2+3+4的和,因此最后输出为10。

更多相关问题