首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序 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
41
问题
有以下程序 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://www.kaotiyun.com/show/mXWp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
假定有如下的Sub过程:SubS(xAsSingle,yAs,Single)t=x:x=t\yy=tModYEndSub在窗体上画一个命令按钮,然后编写如下事件过程:PrivateSub
已知:x=-6y=39则表达式“y\x*Sgn(x)”的值为
下列数据结构中,能够按照“先进后出”原则存取数据的是
在窗体上画一个名称为Commandl的命令按钮,然后编写如下程序:OptionBase1PrivateSubCommandl_Ciek()d=0:c=10:x=Array(10,12,21,32,24)Fori=1To5Ifx(
如下关于变体类型变量的叙述中,错误的是
程序运行时,当用鼠标点击滚动条两端的箭头按钮时,不会产生的结果是()。
设整型数组a有10个元素,其中前9个元素中数已按小到大顺序排列,下面程序段的作用是x=InputBox("请输入一个整数")k=8DoIfx>=a(k)Thena(k
结构化程序设计的基本原则不包括
下面对“对象”概念描述正确的是()。
组合框是文本框和()特性的组合。
随机试题
サッカーの試合中に、観客が数名________から飛び降りてきた。そのため、試合が一時中断した。
在RHEL5系统中从源代码安装软件时,编译成功后执行安装的命令一般是()。
对流给热热阻主要集中在()。
在数字乳腺X线摄影质量控制计划的实施项目中,下列哪项不属于每季度质量控制的实施项目
下列属于人际传播的是
蛛网膜下腔出血的常见原因
诊断糖尿病的主要依据是
周某因合同纠纷起诉,甲省乙市的两级法院均驳回其诉讼请求。周某申请再审,但被驳回。周某又向检察院申请抗诉,检察院以原审主要证据系伪造为由提出抗诉,法院裁定再审。关于启动再审的表述,下列哪些说法是不正确的:()
顾客满意程度应包括()基本特性。
从哲学上思考体制创新和科技创新,就是要坚持实践第一的观点。()
最新回复
(
0
)