首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正程序中的错误,使该程序的输出结果为: 20,15 15,20 注意:错误的语句在//******error******的下面,修改该语句即可。 1
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正程序中的错误,使该程序的输出结果为: 20,15 15,20 注意:错误的语句在//******error******的下面,修改该语句即可。 1
admin
2018-10-23
80
问题
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正程序中的错误,使该程序的输出结果为:
20,15
15,20
注意:错误的语句在//******error******的下面,修改该语句即可。
1 #include<iostream.h>
2 //******error******
3 void Exchangel(int m,int n)
4 {
5 int t=m;
6 m=n;’
7 n=t;
8 }
9 //******error******
10 void Exchange2(int m,int n)
11 {
12 int t=*m;
13 *m =*n;
14 *n =t;
15 }
16 void main()
17 {
18 int b=20;
19 int a=15;
20 Exchange1(a,b);
21 cout<<a<<’,’<<b<<end1;
22 //******error******
23 Exchange2(a,b);
24 cout<<a<<’,’<<b<<end1;
25 }
选项
答案
(1)void Exchange1(int&m,int&n) (2)void Exchange2(int*m,int*n) (3)Exchange2(&a,&b);
解析
程序中定义了两个交换函数,分别采用传地址和传引用的方式来实现交换。
(1)由程序的运行结果可知,分别调用Exchange1()和Exchange2()后,a和b的值两次发生交换,因此Exchange1()函数和Exchange2()函数均为实现交换的函数。参数传递方式有多种,将变量名作为实参和形参、传递变量的指针和传送引用方式,将变量名作为实参和形参方式,这种传递是单向的,在函数执行过程中形参的值发生变化不会传回实参,而指针和引用方式在函数执行过程中形参会影响实参。显然这里不是采用变量名作为实参和形参的单向传递方式,而是采用的传地址或传引用的方式,在Exchange1()体内没有出现指针运算符“*”,因此可知Exchange1()函数是采用的传引用的方式,因此第1个标识下应改为“void Exchangel(int& m,int& n)”。
(2)由1分析可知,Exchange2()函数内有指针运算符“*”,可知其是采用的传指针的方式作为参数传递,因此第2个标识下应改为“void Exchange2(int*m,int*n)”。
(3)Exchange2()参数为int型数据指针,因此调用Exchange2()时应传入指针而不是变量名,故第3个标识下应改为“Exchange2(&a,&b);”。
转载请注明原文地址:https://kaotiyun.com/show/i5Ap777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有以下程序main(){inta=5,b=4,c=3,d=2;if(a>b>c)cout<<d<<endl;elseif((c-1>=d)==1)cout<<d+1<<endl
有以下程序main(){inti=1,j=1,k=2;if((j++||k++)&&i++)cout<<i<<","<<j<<","<<k<<endl;}执行后输出结
有以下程序:#include<iostream>usingnamespacestd;intmain(){intx=15;while(x>10&&x<50){x+
operator是运算符重载时必须使用的关键字,它和被重载的运算符连在一起,作为运算符函数的专用函数名,务必把该函数说明为______的。
以下函数值的类型是()。fun(floatx){floaty;y=3*x-4;returny;}
对于语句cout<<setfilll(’*’)<<setw(10)<<1<<setill(’*’)<<setw(2)<<2;的输出结果是()。
下面程序的结果是()。#include<iostream.h>classA{inta;public:A():a(1){}voidshowa(){cout<<a;}};Cl
有以下程序:#include<iostream.h>voidfun(inta,mtb,intC){a=456,b=567,c=678;}voidmain(){intx=10,y=20,z=30;
如果使用数组名称为函数参数,形实结合时,传递的是______。
有下列程序:#include<iostream>usingnamespacestd;classTestClass1{public:TestClass1(){cout<<"A";}
随机试题
与报纸产量有关的统计指标的基本单位是【】
简述国家和国际组织成为国际经济关系主体的过程。
意志行动过程可分为_______、_______两个阶段。
地方各级人大主要以召开会议的方式进行工作。会议每年至少举行一次,经下列选项中的哪一法定数额代表的提议可以临时召集本级人大会议?()
背景资料(二):下图所示为梁的结构施工图,请据图回答下列问题。该梁为框架梁,编号为7,共3跨。()
参加房地产经纪人资格全部4个科目考试的人员,必须在()考试年度内通过应试科目,才视为考试通过。
1994年提出的房改的内容可以概括为“三改四建”。下列对其表述有误的是()。
某工程双代号网络计划如下图所示,图中已标出各项工作的最早开始时间和最迟开始时间,该计划表明()。
连杆机构按各构件相对运动的性质不同,可分为()。
明治维新:睦仁天皇
最新回复
(
0
)