下列程序的输出结果是【】include<iostream> using namespace std; int main() { int num=500; int

题目
下列程序的输出结果是【】include using namespace std; int main() { int num=500; int

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

include<iostream>

using namespace std;

int main()

{

int num=500;

int &ref=num;

ref +=100;

cout<<num<<end1;

return 0;

}

参考答案和解析
正确答案:600
600 解析:考核引用的使用。题中整型变量ref定义为num的引用,所以对ref的作用等同于对num的作用,所以ref加上100后, num的值也就变成了600。
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

以下程序的输出结果是( )。 include void swap(int*a,int*B){int*t; t=a;a=b;b=c;} main

以下程序的输出结果是( )。 include<stdio.h> void swap(int*a,int*B){int*t; t=a;a=b;b=c;} main() {int i=3,j=5,*p=&i,*q=&j; swap(p,q);printf("%d %d\n",*p,*q); }


正确答案:3 5
3 5 解析:本题考查函数中形参和实参的传递。在C语言函数中实参和形参传递具有不可逆性,参数只能由实参传向形参,而不能由形参传向实参,虽然swap函数的功能是实现两个数的交换,但由于没有返回值,故最终的输出结果为3 5。

第2题:

下列程序段的输出结果是includevoid fun(int*x,int*y){cout<<*x<<*y;*X=3;*y=4;}vo

下列程序段的输出结果是 #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<<endl; }

A.2143

B.1212

C.1234

D.2112


正确答案:A

第3题:

下列程序的输出结果是【】 include using namespace std; int &get Var(int*pint) {

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

include<iostream>

using namespace std;

int &get Var(int*pint)

{

return *pint;

}

int main()

{

int a=10;

getvar(&A) =20;

cout<<a<<end1;

return 0;

}


正确答案:20
20 解析:本题考核引用的使用。题中函数getVar返回的为实参的引用,即将a的引用赋值为20,所以最后输出a的值为20。

第4题:

下列程序段的输出结果是includevoid fun(int * x,int * y){cout<<* X<<* y; *X=3;

下列程序段的输出结果是 #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<<endl; {

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++语言中函数的传参方式中关于指针的应用。

第5题:

下列程序的输出结果是【】includeusing namespace std;int &qetVar(int *pint){ ren

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

include<iostream>

using namespace std;

int &qetVar(int *pint)

{

renurn *pint;

}

int main ()

{

int a =10;

getVar(&a) = 20;

cout<<a<<end1;

return 0; }


正确答案:20
20 解析:本题考核引用的使用。题中函数getVar返回的为实参的引用,即将a的引用赋值为20,所以最后输出a的值为20。

第6题:

以下程序的输出结果是【】。includevoid main() {int *p;p=new int;*p=200;cout<<*p;d

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

include<iostream. h>

void main() {

int *p;

p=new int;

*p=200;

cout<<*p;

delete p;

}


正确答案:200
200

第7题:

下列程序的输出结果是【 】。include void swap(int *a, int *B) { int *t; t=a;a=b;b=t;

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

include <stdio.h>

void swap(int *a, int *B)

{

int *t;

t=a;a=b;b=t;

}

main()

{

int i=3,j=5,*p=&i,*q=&j;

swap(p,q);printf("%d %d\n",*p,*q);

}


正确答案:3 5
3 5 解析:本题考查函数中实参和形参的传递,在C语言函数中实参和形参传递具有不可逆性,参数只能由实参传向形参,而不能由形参传向实参,虽然swap函数的功能是实现两个数的交换,但没有返回值,故最终的输出结果为3 5。

第8题:

下列程序的输出结果是()。includeint b=2;int func(int*A){b+=*a;return b;}main(){int

下列程序的输出结果是( )。 #include<stdio.h> int b=2; int func(int*A){ b+=*a;return b;} main() { int a=1,t=2; t+=func(&a); printf("%d\n",t); }

A.4

B.5

C.6

D.8


正确答案:B
解析: 本题考查函数调用时的参数传递。在执行函数func时,由于全局定义了一个变量b,所以在函数体中执行时b=2+1=3,最终t=2+3=5。

第9题:

下列程序的输出结果是()。includevoid fun(int*a,int*B){int *k;k=a;a=b;b=k;}main(){i

下列程序的输出结果是( )。 #include<stdio.h> void fun(int*a,int*B){ int *k; k=a;a=b;b=k;} main() { int a=1,b=2,*x=&a,*y=&b; fun(x,y); printf("%d%d",a,B); }

A.2 1

B.1 2

C.编译出错

D.0 0


正确答案:B