下面程序的功能是不用第三个变量,实现两个数的对调操作.

#include<stdio.h>main(){inta,b;scanf("%d%d",&a,&b);printf("a=%d,b=%d\n",a,b);a=①;b=②;... #include <stdio.h>
main()
{ int a,b;
scanf("%d%d",&a,&b);
printf("a=%d,b=%d\n",a,b);
a= ① ;
b= ② ;
a= ③ ;
printf("a=%d,b=%d\n",a,b);答案是a+b a-b a-b 这个答案好像只完成把a赋给b 而没有把b的值赋给a啊 我是不是对啊 解析一下 谢谢
展开
 我来答
MW3_Grinch
推荐于2018-05-11
知道答主
回答量:14
采纳率:100%
帮助的人:13.9万
展开全部
答案是对的,的确交换了a,b的值。
可以这么理解:
令scanf读入两个整数为x和y,并分别赋值给a,b。此时a=x,b=y。
①:a = a + b = x + y;
②:b = a - b = ( x + y ) - y = x;
③:a = a - b = ( x + y ) - x = y;
匿名用户
2018-12-12
展开全部
第四行,“%d%d”之间加个“,”就对了
不过为啥原因是啥,就不知道了//笑哭
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
野人无事不言L
2015-12-05 · TA获得超过1413万个赞
知道顶级答主
回答量:2242万
采纳率:0%
帮助的人:142.3亿
展开全部
a=a+b; b=a-b; a=a-b; 自己试试,对的
追问
我不明白 a是什么时候被b给对换的
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式