首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序 void fun(char *c,int d) { *c=*c+1;d=d+1; printf(“%c,%c”,*c,d); } main() { char a=’A’,b=’a’; fun
有以下程序 void fun(char *c,int d) { *c=*c+1;d=d+1; printf(“%c,%c”,*c,d); } main() { char a=’A’,b=’a’; fun
admin
2010-01-10
28
问题
有以下程序 void fun(char *c,int d) { *c=*c+1;d=d+1; printf(“%c,%c”,*c,d); } main() { char a=’A’,b=’a’; fun(&b,a);printf(“%c,%c\n”,a,b); } 程序运行后的输出结果是
选项
A、B,a,B,a
B、a,B,a,B
C、A,b,A,b
D、b,B,A,b
答案
8
解析
用地址作为参数与值作为参数传递之间的不同。在C语言中,数据传递是单向传递的。“值传递”就是实参把对应的值传给相应的形参变量,然后形参和实参不再有任何联系,在被调用函数中,对形参的修改并不影响对应的实参。“地址传递”就是实参把相应的地址传给相应的形参变量,在被调用函数中对形参的修改将修改对应的实参地址对应的值。程序中定义了两个字符型变量’a’和’b’,并分别赋初值为’A’和’a’,然后调用函数fun(),将b的地址和:值作为实参。在函数fun()中第一个参数是传递地址,故在调用函数fun()中对参数做的修改(即将b值加1)将影响字符型变量的值(变为 b),函数fun()第二个参数是传值的,故在调用函数fun()对第二个参数做的修改不影响字符型变量a(即’a’的值仍为’A’),所以在fun()函数中输出的是d为b,B,接着在主函数中,输出a,b,然后退出fun()函数,接着执行后面的语句,输出A,b。所以最后输出为b, B,A,b。
转载请注明原文地址:https://kaotiyun.com/show/mXWp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
若在窗体模块的声明部分声明了如下自定义类型和数组PrivateTyperecCodeAsInteger:CaptionAsStringEndTypeDimarr(5)Asrec则下面的输出
有下面程序代码:PrivateSubCommandl_Click()a=Array(1,2,3,4,5,6,7,8,9,10)n=UBound(a)Fork=0ToUBound(a)/2
已知:x=-6y=39则表达式“y\x*Sgn(x)”的值为
某系统结构图如下图所示,该系统结构图的最大扇入数是()。
设变量x的值是845,则下面语句的输出是Printx\100+(xMod100)\10+xMod10
命令按钮Command1的MouseUp事件过程结构如下:PrivateSubCommand1_MouseUp(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)……EndSu
在利用菜单编辑器设计菜单时,为了把组合键“Alt+X”设置为“退出(X)”菜单项的访问键,可以将该菜单项的标题设置为
设整型数组a有10个元素,其中前9个元素中数已按小到大顺序排列,下面程序段的作用是x=InputBox("请输入一个整数")k=8DoIfx>=a(k)Thena(k
在窗体模块的声明部分声明变量时,不能使用的关键字是
设a=10,b=4,c=5,d=7,表达式a>bAndNotc<d+6的值为()。
随机试题
特异性感染为( )
手三阳经在躯干部的分布是()
()只需要具有新颖性,即可申请专利。
前人民检察院书记员姜某于1996年经律师资格考试合格取得律师资格,1997年7月1日辞职到律师事务所实习。依《律师法》的有关规定,姜某在实习期间可以从事哪些业务活动?()
经纪人在从事在建工程抵押活动中应特别把握以下几点()。
咨询工程师在工程项目决策阶段的主要工作包括()。
E建筑工程公司原有从业人员650人,为减员增效,2009年3月将从业人员裁减到350人,质量部、安全部合并为质安部,原安全部的8名专职安全管理人员转入下属二级单位,原安全部的职责转入质安部,具体工作由2人承担。2010年5月,E公司获得某住宅楼工程的承建
政府采购的所有信息都应当在政府采购监督管理部门指定的媒体上及时向礼会公开发布。()
下列关于生成表查询的叙说中,错误的是()。
一间宿舍可住多个学生,则实体宿舍和学生之间的联系是()。
最新回复
(
0
)