首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; void f1(int& x, int& y) {int z=x+y; x=y; y=z;} void f2(int x, i
有如下程序: #include using namespace std; void f1(int& x, int& y) {int z=x+y; x=y; y=z;} void f2(int x, i
admin
2015-07-22
68
问题
有如下程序:
#include
using namespace std;
void f1(int& x, int& y) {int z=x+y; x=y; y=z;}
void f2(int x, int y) {int z=x+y; x=y; y=z;}
int main() {
int x=10,y=26;
f1(x,y);
f2(x,y);
cout<
return 0;
}
运行时的输出结果是
选项
A、10
B、26
C、36
D、46
答案
C
解析
参数传递有三种:
传值(value),传址(address),和传引用(reference)
传值时子函数(被调用者)复制父函数(调用者)传递的值,这样子函数无法改变父函数变量的值,函数f2就属于传值调用,所以不会改变y的值。
传址时父函数将变量的地址传递给子函数,这样子函数可以能过改写地址里的内容改变父函数中的变量
传引用则是一种看起来像传值调用,而实际上功能同传址一样的传递方式。子函数可以改写父函数的变量值。f1函数属于传引用调用,所以y的值在执行完函数后变为了36,C选项正确。
转载请注明原文地址:https://kaotiyun.com/show/mANp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面程序的输出结果为()。#include<iostream.h>classCStatic{public:CStatic(){val++;}stati
若调用一个函数,且此函数中没有return语句,则正确的说法是该函数()。
类模板的使用实际上是将类模板实例化成一个具体的()。
下面关于运算符重载的描述错误的是()。
类是一个支持集成的抽象数据类型,而对象是类的【】。
有以下程序#include<iostream>usingnamespacestd;inta;intfun();intmain(){externinta;intb;
下列运算符中不能在C++中重载的是
下列叙述中,不属于软件需求规格说明书的作用的是
数据库DB、数据库系统DBS、数据库管理系统DBMS之间的关系是
在声明派生类时,如果不显式地给出继承方式,缺省的类继承方式是私有继承private。已知有如下类定义:classBase{protected:voidfun(){}};classDerived:
随机试题
当项目非常庞大和复杂而需要分为几部分进行成本计划的编制时,采用的成本计划编制方法是()。
科目汇总表和汇总记账凭证是一种()。
期货交易流程中,客户办理开户登记的正确程序为( )。
证券公司向客户融资,可以使用()。I.自有资金Ⅱ.客户资金账户内存放期达到规定时间的资金Ⅲ.公司贷款所得Ⅳ.客户信用交易担保资金账户内的资金
在人员招聘活动的评估中,内容效度多用于()。
撰写培训评估报告的步骤包括()。
世界食品需求能否保持平衡,取决于人口和经济增长的速度。人口增长会导致食物摄取量的增加;另一方面,经济增长会促使畜产品消费增加,改变人们的食物结构,从而对全球的谷物需求产生影响。据此可知()
每一个复杂的生物个体都是由各种不同的细胞构成的系统,其中每个细胞中的DNA都包含了该生物个体所有性状的遗传信息。这段话蕴涵的哲理有()。
社会规范学习
Whatisthebesttitleofthepassage?
最新回复
(
0
)