问题
单项选择题
以下程序不用第三个变量实现将两个数进行对调的操作,划线处应为main(){ int a,b; scanf(" % d%d", &a, &B) .; cin>>a>>b;cout<<"a= "<<a<<<"b = "<<b; a=a+b; b=a-b;a= ______;cout<<"a= "<<a<<"b= "<<b<<end1;}
A.a+b
B.a-b
C.b*a
D.a/b
答案
参考答案:B
解析: 本题思路巧妙,分析时可以发现b=(a+ b)-b,则此时b中放的是a,完成交换工作的一半。然后要将b放到a中,将表达式展开,则为a=(a+ b)-a,此时正好把b放到a中。此时完成全部的交换。