首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
以下4个程序中,不能实现两个实参值进行交换的是 ( )。
以下4个程序中,不能实现两个实参值进行交换的是 ( )。
admin
2013-05-30
31
问题
以下4个程序中,不能实现两个实参值进行交换的是 ( )。
选项
A、void swap (float *p, float *q) { float *t ,a; t = &a; t = p; *p = *q; *q = *t; } void main () { float x = 8.0;y = 9.0; swap (&x, &y); cout<<x<<", "<<y<<
B、void swap (float *p, float *q) { float a; a = *p; *p = *q; *q = a; } void main() { float x = 8.0;y = 9.0; swap (&x, &y); cout<<x<<", "<<y<<end1;
C、void swap (float *p, float *q) { float x; x = *p; *p = *q; *q = x; } void main() { float a,b.; *a = 8.0;*b = 9.0; swap (a, b) ;
D、void swap (float &p, float &q) { float a; a = p; p = q; q = a; } void main() { float a = 8.0,b = 9.0; swap (a,b); cout<<x<<", "<<y<<
答案
4
解析
本题考核指针和引用作为函数形参。做此类题时,应学会整体比较,要不然花费的时间不亚于一个大的编程题。
①首先,这4个程序都是调用swap函数,而且目的都一致,交换传入的两个实参值。
②分析被调函数swap()。在选项A、B和C中都是指针作为形参,只有在选项D中,函数swap()是以引用作为形参。由指针和引用作为函数形参的特点可知,只要调用了函数,就能达到交换两个实参变量的值,所以这几个被调函数没有问题。
③再看主函数。在选项C中,没有定义指针类型变量,而是直接给指针变量赋值:
“floata,b;*a=8.0;*b=9.0;”,这显然是非法的。想直接开辟存储空间,交换两个常量值,是不可能的。所以只有选项C是错误的。
转载请注明原文地址:https://kaotiyun.com/show/bFNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
在E-R图中,用来表示实体的图形是()。
C++语言做了很多改进,下列描述中_______使得C语言发生了质变,即从面向过程变成面向对象。
支持数据库各种操作的软件系统叫做()。
下列有关析构函数的说法错误的是()。
在结构化分析方法中,用于描述系统中所用到的全部数据和文件的文档称为【】。
设m、n、a、b、c、d均为0,执行(m=n==B)||(n=c==D)后,m、n的值是()。
具有n个结点的完全二叉树,其深度为【】。
在C++语言中,main函数默认返回一个()类型的值。
在声明派生类时,如果不显式地给出继承方式,缺省的类继承方式是私有继承private。已知有如下类定义:classBase{protected:voidfun(){}};classDerived:
数据处理的最小单位是
随机试题
2020年9月14日,国家主席习近平在北京同欧盟轮值主席国德国总理默克尔、欧洲理事会主席米歇尔、欧盟委员会主席冯德莱恩以视频方式共同举行会晤。会上习近平主席强调,中欧要做到()
习近平总书记指出,党对军队的绝对领导是我军的军魂和命根子,永远不能变,永远不能丢。党对军队绝对领导的根本原则和制度,发端于南昌起义,奠基于三湾改编,定型于()。
一个相容选言判断p∨q假,那么,一定为()
最有可能导致ARF的损伤是
患者,男,18岁,感冒后鼻衄,鼻腔干燥,口干,咳嗽少痰,低热,舌质红,苔薄黄,脉数,治法应
外感风热,项背强痛者,宜选用的药物是()外感风热,目赤肿痛者,宜选用的药物是()
物业管理的全面正式启动以物业的()为标志。
中小企业资金难题可以使用“开源节流”的手段,下列关于“开源节流”手段的认识,错误的是()。
在市场营销学中,市场是某种产品的()购买者需求的总和。
设f(x)=|sint|dt,则
最新回复
(
0
)