首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列程序输出的结果是( )。 #include<stdio.h> fun1(char a,char b){char c;c=a;a=b;b=c;} fun2(char*a,char b){char c;c=*a;*a=b;b=c;}
下列程序输出的结果是( )。 #include<stdio.h> fun1(char a,char b){char c;c=a;a=b;b=c;} fun2(char*a,char b){char c;c=*a;*a=b;b=c;}
admin
2012-01-20
37
问题
下列程序输出的结果是( )。 #include<stdio.h> fun1(char a,char b){char c;c=a;a=b;b=c;} fun2(char*a,char b){char c;c=*a;*a=b;b=c;} fun3(char*a,char*b){char c;c=*a;*a=*b;*b=c;} void main() { char a,b; a=’A’;b=’B’;fun1(a,b);putchar(a);putchar(b); a=’A’;b=’B’;fun2(&a,b);putchar(a);putchar(b); a=’A’;b=’B’;fun3(&a,&b);putchar(a);putchar(b); putchar(’\n’); } A) B)
C) D)
选项
A、BABBAB
B、ABBBBA
C、ABBABA
D、ABABBA
答案
B
解析
由程序中的主函数main入手,分别调用fun1,fun2,fun3函数,得到输出结果。其中,三个函数都是实现两个形参的交换功能,只是参数传递的方式不同,有的是地址。有的是传值。第一个函数中参数采用的是值传递的方式,形参的变化不影响实参。所以调用fun1后,实参a和b并没有交换,仍然是AB。第二个调用中,实参a采用的是地址,即传递的是地址,所以形参a的改变会影响实参a的值,即BB。同理,调用fun3后为BA。
转载请注明原文地址:https://kaotiyun.com/show/QCVp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有以下程序#include<stdio.h>#include<string.h>typedefstructstu{charname[10];
已知二叉树后序遍历序列是CDABE,中序遍历序列是CADEB,它的前序遍历序列是()。
给定程序MODI1.C中,函数fun的功能是求矩阵(二维数组)a[N][N]中每行的最小值,结果存放到数组b中。假如:若a=则结果应为1,5,9,13,请改正函数fun中指定部位的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,
若有以下定义,则对数组元素的正确引用是()。inta[5],*p=a;
若i、j已定义成int型,则以下程序段中内循环体的总执行次数是()。for(i=6;i>0;i--)for(i=0;j<4.j++){…}
以下选项中与if(a==1)a=b;elsea++;语句功能不同的switch语句是()。
C语言程序中,运算对象必须是整型数的运算符是
若某二叉树中的所有结点值均大于其左子树上的所有结点值,且小于右子树上的所有结点值,则该二叉树遍历序列中有序的是
算术运算符和圆括号有不同的运算优先级,对于表达式:a+b+c*(d+e),关于执行顺序,以下说法正确的是()。
如果有以下定义及初始化:inta=3,*p=&a;则由此可以推断,*p的值是()。
随机试题
FiveBadStudyHabits1.Writingdown【T1】________ofalectureSolution:Puttheinformationintoachartor【T2】________
某柜组2006年末进行盘存,账面库存应为200万元,库存实物盘存为180万元,实际库存比账面库存少20万元。其盘亏率为多少?意义是什么?
沉淀脱氧的原理是溶解在液态金属中的脱氧剂和()直接反应。
某一条无差异曲线由XY=48表示,下列哪两种商品组合是处于这一条无差异曲线上的?()
功能清热解毒,善治疗毒的药是
其性"凝滞"者的邪气为其性"黏滞"者的邪气为
地黄饮子的功用是大定风珠的功用是
《医药产品注册证》、《进口药品注册证》和药品批准文号的有效期是
建设工程进度监测的主要环节是()。
请认真阅读下列材料,并按要求作答。问题:如指导高年段小学生学习上述内容,试拟定教学目标和教学重点。
最新回复
(
0
)