c语言函数x和y调换 c语言中怎样将xy的值交换

C语言:定义宏swap(x,y)用于交换两个参数x和y的值,并编写程序测试_百度...

这个无法交换数据。C语言函数参数的基本规则是值传递,所以传递时只能实现实参向形参的单向的、值的传递。这就是为什么需要使用指针才能实现值交换的原因。

松江网站建设公司创新互联,松江网站设计制作,有大型网站制作公司丰富经验。已为松江上1000家提供企业网站建设服务。企业网站搭建\外贸网站建设要多少钱,请找那个售后服务好的松江做网站的公司定做!

swap函数一般是一个程序员自定义函数。通常是实现两个变量数值的交换。swap1(x,y);printf(swap1: x:%d,y:%d\n,x,y);//形参传值,不能交换,实际传过去是拷贝的一份,没改变主函数中x,y。

这是带参数的宏定义,相当于一个函数,宏定义实际上就是把后面的那个(t= temp;temp=x;x=y;y=temp;)直接加到语句中去的,只是一个替换,在编译之前就进行的。。

C语言要求函数的功能是交换x和y中的值,且通过正确调用返回交换结果...

答案:A 分析:按照C++语言规则,通过参数带回运算值,只能是传地址,不能是传值 ,B和D的参数是传值,故B和D不能选。C中传回值都是指针变量y所指向地址的值,C也不能选。

要求一个颠倒x,y的函数,就是说把x,y输入到函数中,函数能把他们颠倒。第二个函数的参数中没有x和y的指针,所以根本不可能获得x,y的地址,自然也就不可能颠倒x,y,而且大括号里的x,y也没有变量声明,只会报错而已。

int t,int z)就只是按值传递,函数调用结束后下x,y的值没有真正的互换,互换的只是只是函数形参的值,所以这里用指针来实现,把*x和*y所指向的地址的值互换,这样在函数调用结束后x,y才真正改变了。

A错:y值没变;B错:传的不是指针,x和y都不变;C错:和A一样,y不变;D正确:传的是指针,通过x和y的地址交换它们的值。

B. funb(int x,int y){int t;t=x;x=y;y=t;/// //x=y是y的值变为x的值,后面y=t是x的值变为y的值,这里只让y的值变成x而没有把y的值变为x的值,没有完全交换x和y中的值。

c语言的题。要求函数的功能是交换x与y的值,……请讲下原因,谢谢_百度...

1、A错:y值没变;B错:传的不是指针,x和y都不变;C错:和A一样,y不变;D正确:传的是指针,通过x和y的地址交换它们的值。

2、答案:A 分析:按照C++语言规则,通过参数带回运算值,只能是传地址,不能是传值 ,B和D的参数是传值,故B和D不能选。C中传回值都是指针变量y所指向地址的值,C也不能选。

3、函数调用中发生的数据传送是单向的。即只能把实参的值传送给形参,而不能把形参的值反向地传送给实参。 因此在函数调用过程中,形参的值发生改变,而实参中的值不会变化。

新闻标题:c语言函数x和y调换 c语言中怎样将xy的值交换
网站地址:https://www.cdcxhl.com/article28/dchppcp.html

成都网站建设公司_创新互联,为您提供企业网站制作外贸建站云服务器关键词优化微信公众号网站导航

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

商城网站建设